5 二重循环

简介: 5 二重循环

配套视频教程


本文B站配套视频教程


循环回顾


某次程序大赛,S1班有4名学员参加,学员的成绩由用户输入,计算该班参赛学员的平均分

二重循环


若有3个班级各4名学员参赛,如何计算每个班级参赛学员的平均分?


image.png



使用二重循环实现--一个循环体内又包含另一个完整的循环结构

外层循环控制班级数目,内层循环控制每个班级学员数目


image.png

int classNum = 3;
        int studentNum = 4;
        Scanner scanner = new Scanner(System.in);
//        外层循环控制班级数目
        for(int i = 0; i < classNum; i++)
        {
            int total = 0;//某个班级全部学员的总成绩
            for(int j = 0; j < studentNum; j++)
            {
                System.out.println("请输入第"+(i+1)+"个班级"+"第"+(j+1)+"个学员的成绩");
                int score = scanner.nextInt();
                total += score;
            }
            System.out.println("第"+(i+1)+"个班级的平均成绩是" + total/4);
        }

for(int i = 0; i <classNum; i++){
        sum = 0.0;                      
        System.out.println("请输入第" + (i+1) + "个班级的成绩");
        for(int j = 0; j < score.length; j++){ 
            System.out.print("第" + (j+1) + "个学员的成绩:");
            score[j] = input.nextInt();
            sum = sum + score[j];   
        }
        aver [i] = sum / score.length;          //计算平均分
        System.out.println(“第”+(i+1)+“个班级平均分" + aver [i] + "\n");
    }


如何用*打印矩形图案?


image.png


分析

用二重循环实现

外层循环控制行数

内层循环控制每行的*号数

for (int m = 0; m < 5; m++)
        {
            for (int i = 0; i < 5; i++)
            {
                System.out.print("*\t");
            }
            System.out.println("");
        }


打印倒直角三角形


image.png


从控制台输入直角三角形的高度(行数)

每行*的数目从下至上依次为1、2、3、4…

//*****
//****
//***
//**
//*
//        第1行 m=5,里层循环要打印5个*
//        第2行 m=4,里层循环要打印4个*
//        第3行 m=3,里层循环要打印3个*
        //for (int m = 0; m < 5; m++)//控制的是打印多少行
        Scanner scanner  = new Scanner(System.in);
        System.out.println("输入行数");
        int row = scanner.nextInt();
        for (int m = row; m > 0; m--)//控制的是打印多少行
        {
            for (int i = 0; i < m; i++)//控制的是每行打印多少列
            {
                System.out.print("*\t");
            }
            System.out.println("");
        }

打印直角三角形


image.png

image.png

从控制台输入直角三角形的高度(行数)

每行 * 的数目依次为1、3、5、7…

分析

实现思路

外层循环控制行数

分析每行打印的内容

每一行打印字符*结束后要换行

内层循环的条件   j<=2i-1


打印九九乘法表


image.png


for (int m = 0; m < 9; m++)//控制的是打印多少行
        {
            for (int i = 0; i < 1+m; i++)//控制的是每行打印多少列
            {
                System.out.print((i+1)+"*"+(m+1)+"="+((i+1)*(m+1))+"\t");
            }
            System.out.println("");
        }

分析

九九乘法表共有9行,因此外层循环条件为

i<=9

第i行上有i个式子,因此因此外层循环条件为

j <= I

第i行上的第j个式子为

j的值 * i的值 = j*i的值


在二重循环中使用continue


若有3个班级各4名学员参赛,计算每个班级参赛学员平均分,统计成绩大于85分学员数


image.png

目录
相关文章
|
2月前
|
机器学习/深度学习
while循环
该内容是关于编程中的`while`循环结构介绍。它以markdown格式展示了`while`循环的基本形式:`while(表达式) 语句;`,并提到如果需要多条语句,可以用大括号包裹。接着,提供了两个实例:一是打印1到10的数字,二是逆序输出一个正整数的每一位。每个实例都配有一个展示结果的图片。
23 2
|
2月前
do while循环
该内容介绍了编程中的循环语句,强调了`do while`循环与`while`和`for`循环的区别。`do while`循环先执行循环体再判断条件,确保至少执行一次,而`while`和`for`先判断条件再执行。通过示例展示了`do while`循环打印1-10和计算正整数位数的应用,指出在某些情况下,`do while`循环更为合适。
23 0
|
2月前
|
C语言
c循环
c循环
18 0
|
2月前
|
Python
phython中while循环
phython中while循环
|
2月前
|
Shell 开发工具
while do done, until do done(不定循环)
【1月更文挑战第7天】。
36 0
|
8月前
while循环和do-while循环?
while循环和do-while循环?
|
11月前
三个循环(C)
while语句:while(表达式){},先判断表达式,若符合,则执行循环内容,一个循环后再次判断表达式。
52 0
|
12月前
|
C#
【C#视频】for、while、do-while三种循环
【C#视频】for、while、do-while三种循环
|
12月前
|
C语言
C 中的循环
C 中的循环
|
C语言 C++
C++——循环
C++——循环