java08双重循环打印图形

public class Double01 {

    /**
     * 若有3个班级各4名学员参赛,
     * 如何计算每个班级参赛学员的平均分?
     */
    public static void main(String[] args) {

        // 创建一个2维数组保存数据
        double[][] scores = new double[3][4];
        // 循环输入学员的成绩
        Scanner scanner = new Scanner(System.in);
        // 定义一个变量 保存每个班级的总分
        double sum = 0;
        // 01.外层循环控制班级数
        for (int i = 0; i < scores.length; i++) {
            System.out.println("请您输入第" + (i + 1) + "个班级的学生成绩************");
            // 02.内层循环控制学生人数
            for (int j = 0; j < scores[i].length; j++) {
                System.out.println("请您输入第" + (j + 1) + "个学生成绩");
                scores[i][j] = scanner.nextDouble();
                sum += scores[i][j];
            }
            System.out.println("第" + (i + 1) + "个班级的平均分是:"
                    + (sum / scores[i].length));
            // 总分清零 为了下个班级的总分计算
            sum = 0;
        }
    }
}
public class Double02 {

    /**
     *  直角三角形
     */
    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);
        System.out.println("请您输入需要显示的行数:");
        int num = scanner.nextInt();
        // 外层循环控制行数
        for (int i = 1; i <= num; i++) {
            for (int j = 1; j <= 2 * i - 1; j++) {
                System.out.print("*");
            }
            System.out.println(); // 换行
        }

        System.out.println("========================");
        // 倒三角
        for (int i = 1; i <= num; i++) {
            for (int j = 1; j <= num + 1 - i; j++) {
                System.out.print("*");
            }
            System.out.println(); // 换行
        }

    }
}
public class Double03 {

    /**
     *  九九乘法表
     */
    public static void main(String[] args) {

        // 外层循环控制行数
        for (int i = 1; i <= 9; i++) {
            // 内层循环控制列 j<=i
            for (int j = 1; j <= i; j++) {
                System.out.print(i + "*" + j + "=" + (i * j) + "\t");
            }
            System.out.println();
        }

    }
}
public class Double04 {

    /**
     *  冒泡排序
     *  01.外层循环N-1   (N:数组的长度)
     *  02.内层循环N-1-i (i:比较的轮数,外层循环的变量)
     *  03.两两相比 小靠前!必须进行等量转换!互换位置!
     */
    public static void main(String[] args) {

        int[] nums = { 80, 20, 25, 30, 1, 8, 100, 72, 50 };

        // 外层循环控制轮数
        for (int i = 0; i < nums.length - 1; i++) {
            // 内层循环控制比较次数
            for (int j = 0; j < nums.length - 1 - i; j++) {
                // 两两相比 小靠前! 如果后面的小,需要和前面的数据互换位置
                if (nums[j + 1] < nums[j]) {
                    int temp = 0;
                    temp = nums[j + 1];
                    nums[j + 1] = nums[j];
                    nums[j] = temp;
                }
            }
        }
        System.out.println("排序之后的数组:" + Arrays.toString(nums));

    }
}
public class Double05 {

    /**
     * 若有3个班级各4名学员参赛,
     * 如何计算每个班级参赛学员的平均分?
     * 计算成绩大于85分的学生数量
     */
    public static void main(String[] args) {

        // 创建一个2维数组保存数据
        double[][] scores = new double[3][4];
        // 循环输入学员的成绩
        Scanner scanner = new Scanner(System.in);
        // 定义一个变量保存 大于85分的学生数量
        int count = 0;
        // 01.外层循环控制班级数
        for (int i = 0; i < scores.length; i++) {
            System.out.println("请您输入第" + (i + 1) + "个班级的学生成绩************");
            // 02.内层循环控制学生人数
            for (int j = 0; j < scores[i].length; j++) {
                System.out.println("请您输入第" + (j + 1) + "个学生成绩");
                scores[i][j] = scanner.nextDouble(); // 获取学生成绩
                if (scores[i][j] < 85) {
                    continue; // 如果分数少于85 不计算次数
                }
                count++;
            }
        }
        System.out.println("85分以上的学生人数是:" + count);
    }
}
public class Double07 {
    /**
     * 有3名顾客去商场购物,每人买3件商品
        商品单价300元以上的商品享受8折优惠
        请统计每人享受打折优惠的商品的数量
     */
    public static void main(String[] args) {

        // 保存顾客打折的商品数量
        int count = 0;
        double price = 0;
        Scanner scanner = new Scanner(System.in);
        // 控制顾客的数量
        for (int i = 1; i <= 3; i++) {
            System.out.println("请输入第" + i + "名顾客购买的商品价格");
            for (int j = 1; j <= 3; j++) {
                price = scanner.nextDouble();
                if (price < 300) {
                    continue;
                }
                count++;
            }
            System.out.println("第" + i + "名顾客打折的商品数量:" + count);
            count = 0;
        }

    }
}

// 九九乘法表 外层循环每执行一次,内层循环执行一遍
        for (int i = 1; i <= 9; i++) { // 外层控制的是行数
            for (int j = 1; j <= i; j++) {
                // 内层控制的是列数
                System.out.print(i + "*" + j + "=" + (i * j) + "\t");
            }
            System.out.println();// 换行
        }

九九乘法表

 九九乘法表

  // 正三角形
        for (int i = 1; i <= 5; i++) {
            // 先输出空格
            for (int j = 1; j <= 5 - i; j++) {
                System.out.print(" ");
            }
            // 打印 *
            for (int j = 1; j <= 2 * i - 1; j++) {
                System.out.print("*");
            }
            System.out.println();

        }

正三角形

  // 正三角形
        for (int i = 1; i <= 5; i++) {
            // 先输出空格
            for (int j = 1; j <= 5 - i; j++) {
                System.out.print(" ");
            }
            // 打印 *
            for (int j = 1; j <= 2 * i - 1; j++) {
                System.out.print("*");
            }
            System.out.println();
        }
        // 倒三角形

        for (int i = 1; i <= 4; i++) {
            for (int j = 1; j <= i; j++) { // 空格
                System.out.print(" ");
            }
            for (int j = 1; j <= 9 - 2 * i; j++) { // *
                System.out.print("*");
            }
            System.out.println();
        }

打印菱形

  // 打印平行四边形
        for (int i = 1; i <= 5; i++) {
            for (int j = 1; j <= 5 - i; j++) { // 空格
                System.out.print(" ");
            }
            for (int j = 1; j <= 5; j++) { // *
                System.out.print("*");
            }
            System.out.println();
        }

平行四边形

 @Test
    public void test01() {
        /**
         * 循环录入某学生5门课的成绩并计算平均分,
         * 如果某分数录入为负,停止录入并提示录入错误
         */
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入您的姓名:");
        String name = scanner.next();
        double sum = 0;
        // 循环获取用户的成绩
        for (int i = 1; i <= 3; i++) {
            System.out.println("请输入第" + i + "门课程的成绩:");
            double score = scanner.nextDouble();
            // 如果输入了负数 则跳出循环体
            if (score < 0) {
                System.out.println("您的输入有误!");
                break;
            }
            sum += score; // 计算总成绩
        }
        // 对数字进行格式化
        DecimalFormat df = new DecimalFormat("#.00");
        System.out.println("平均分为:" + df.format((sum / 3)));
    }

    @Test
    // 10以内的整数相加,值大于20的时候输出并且跳出循环
    public void test02() {
        int sum = 0;
        for (int i = 1; i <= 10; i++) {
            sum += i;
            if (sum > 20) {
                System.out.println(sum);
                break;
            }
        }
    }

    /**
     * 循环录入Java课的学生成绩,
     * 统计分数大于等于80分的学生比例
     */
    @Test
    public void test03() {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请您输入班级的人数:");
        int total = scanner.nextInt(); // 总人数
        double score = 0; // 成绩
        int sum = 0;// 记录大于80分的人数
        for (int i = 1; i <= total; i++) { // 循环录入成绩
            System.out.println("请输入第" + i + "门课程的成绩:");
            score = scanner.nextDouble();
            if (score >= 80) { // 如果成绩大于80 sum++
                sum++;
                continue; // 结束本次循环 执行i++语句 继续执行下次的循环
            }
            System.out.println("小于80分 才能执行这句话!");
        }
        // 输出百分比 sum(大于80)/total(总人数)
        DecimalFormat df = new DecimalFormat("#.00%");
        System.out.println("80分以上的百分比是:" + df.format(sum / (total + 0.0)));
    }

    @Test
    // 1-10之间的偶数和
    public void test04() {
        int sum = 0;
        for (int i = 1; i <= 10; i++) {
            if (i % 2 != 0) { // 奇数就要不相加
                continue;
            }
            sum += i;
        }
        System.out.println("偶数和是:" + sum);

    }

    @Test
    // 双重循环中的 continue
    public void test05() {
        for (int i = 1; i <= 2; i++) {
            for (int j = 1; j <= 3; j++) {
                if (j == 2) {
                    break;
                }
                System.out.println("j" + j);
            }
        }

        Scanner scanner = new Scanner(System.in);
        String next = scanner.next();
        System.out.println(next);

    }

小练习

时间: 2024-11-05 06:26:25

java08双重循环打印图形的相关文章

21.使用双重循环打印图形

/* * 打印菱形 * */ public class PrintLX { public static void main(String[] args) { //外层循环,执行五次,每次输出一行* for (int i = 1; i <= 5; i++) { for(int j=1;j<=5-i;j++){ System.out.print(" "); } //内层循环,执行五次,每次输出一个* for (int j = 1;j<=2*i-1;j++){ System

使用二重循环打印图形

使用二重循环打印以下图形 * * * * * * * * * * * * * * * * * * public class Text{ public static void main(string[]args){ for( ){ for(int k=0;k<=2-Marth.abs(i);k++){ System.our.print(" ") } for(int j=0;j<Marth.abs(i)*2+1;j++){ System.out.print("*&qu

C#利用for循环打印图形练习题

(1) namespace ConsoleApp2 { class Program { static void Main(string[] args) { for(int i = 0; i < 5; i++)//外层循环控制的是行数 { for(int j = 0; j <= i; j++)//内层循环控制的是列数,控制是每行打印的内容及个数 { Console.Write("*"); } Console.WriteLine(); } Console.ReadLine();

双重循环趣味题

  今天在做一些双重循环打印的趣味题,在这里分享一下我幼稚的代码: 1 /* 2 * 利用双重循环打印 3 * * 4 * *** 5 * ***** 6 * ******* 7 * ********* 8 * ******* 9 * ***** 10 * *** 11 * * 12 */ 13 14 public class Test { 15 16 public static void main(String[] args) { 17 int num1 = 1; 18 int num2 =

&lt;09&gt; for循环的嵌套+for循环嵌套应用:打印图形+ 按要求打印图形+

for循环的嵌套: 1 #include <stdio.h> 2 3 int main(int argc, const char * argv[]) { 4 //打印出矩形的“*” 5 //控制打印了5行 6 //第一种理解方式:把打印一行的代码,执行了5次 7 for (int j=0; j<5; j++) { 8 //打印一行 * ,有5个 9 10 for(int i=0;i<5;i++){ 11 printf("*\t"); 12 } 13 printf

第13章 使用打印机_13.2 打印图形和文字

13.2 打印图形和文字 (1)注册打印异常终止过程 SetAbortProc(hdcPrn,AbortProc)://在StartDoc前注册 (2)异常终止过程——取消打印 ①调用时间:当调用EndPage之前,程序每次调用一个GDI函数时,GDI模块会把另一个记录追加到磁盘上的图元文件.当调用EndPage时(也就是把图元文件送设备驱动程序和创建临时打印文件时),GDI会频繁地调用异常终止过程.(如生成临时文件导致磁盘空间不足,会调用该过程,并传入iCode为SP_OUTOFDISK的参数

2.1实现打印图形

//实现打印图形 /*题目2.1 使用循环结构打印图形* * * * * *,打印行数n,由用户 * * * * * * * * * * * * 决定,报考中间的空格字符数也由用户输入 #include <iostream> #include <iomanip> using namespace std; int main() { int i,j,k;//i,j,k为计数 int n,m;//n,m为要求输入的值 //n为打印的行数,m为符号之间的间隔数 cout<<&q

使用for循环打印矩形和三角形、菱形、空心菱形

打印矩形 **************************************************************************************************** public class Demo3_712 { public static void main(String args[]){ for(int i=1;i<=10;i++){ //控制行 for(int j=1;j<=10;j++){ //控制列 System.out.print(&

用循环打印出多种三角形

打印一排*,很简单,打印下图 也很简单,代码如下: 1 public class Work10_3 { 2 3 /** 4 * @param args 5 */ 6 public static void main(String[] args) { 7 // TODO Auto-generated method stub 8 int a=0; 9 while(a<4){ 10 int i=0; 11 while(i<10){ 12 System.out.print("*");