5 二重循環(huán)

配套視頻教程

本文B站配套視頻教程

循環(huán)回顧

某次程序大賽,S1班有4名學(xué)員參加,學(xué)員的成績由用戶輸入,計算該班參賽學(xué)員的平均分

二重循環(huán)

若有3個班級各4名學(xué)員參賽,如何計算每個班級參賽學(xué)員的平均分?

image.png

使用二重循環(huán)實現(xiàn)--一個循環(huán)體內(nèi)又包含另一個完整的循環(huán)結(jié)構(gòu)

外層循環(huán)控制班級數(shù)目,內(nèi)層循環(huán)控制每個班級學(xué)員數(shù)目

image.png
        int classNum = 3;
        int studentNum = 4;
        Scanner scanner = new Scanner(System.in);
//        外層循環(huán)控制班級數(shù)目

        for(int i = 0; i < classNum; i++)
        {
            int total = 0;//某個班級全部學(xué)員的總成績
            for(int j = 0; j < studentNum; j++)
            {
                System.out.println("請輸入第"+(i+1)+"個班級"+"第"+(j+1)+"個學(xué)員的成績");
                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) + "個學(xué)員的成績:");
            score[j] = input.nextInt();
            sum = sum + score[j];   
        }
        aver [i] = sum / score.length;          //計算平均分
        System.out.println(“第”+(i+1)+“個班級平均分" + aver [i] + "\n");
    }   

如何用*打印矩形圖案?

image.png

分析
用二重循環(huán)實現(xiàn)
外層循環(huán)控制行數(shù)
內(nèi)層循環(huán)控制每行的*號數(shù)

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

打印倒直角三角形

image.png

從控制臺輸入直角三角形的高度(行數(shù))
每行*的數(shù)目從下至上依次為1、2、3、4…

//*****
//****
//***
//**
//*
//        第1行 m=5,里層循環(huán)要打印5個*
//        第2行 m=4,里層循環(huán)要打印4個*
//        第3行 m=3,里層循環(huán)要打印3個*
        //for (int m = 0; m < 5; m++)//控制的是打印多少行
        Scanner scanner  = new Scanner(System.in);
        System.out.println("輸入行數(shù)");
        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

從控制臺輸入直角三角形的高度(行數(shù))
每行 * 的數(shù)目依次為1、3、5、7…

分析
實現(xiàn)思路
外層循環(huán)控制行數(shù)
分析每行打印的內(nèi)容
每一行打印字符*結(jié)束后要換行

內(nèi)層循環(huán)的條件 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行,因此外層循環(huán)條件為
i<=9
第i行上有i個式子,因此因此外層循環(huán)條件為
j <= I
第i行上的第j個式子為
j的值 * i的值 = j*i的值

在二重循環(huán)中使用continue

若有3個班級各4名學(xué)員參賽,計算每個班級參賽學(xué)員平均分,統(tǒng)計成績大于85分學(xué)員數(shù)

image.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • JS循環(huán) for循環(huán) 格式:for( var i=0; i<5 ; i++){循環(huán)代碼;} i=0,是初始化條件,...
    印象rcj閱讀 638評論 0 0
  • 01奇數(shù)求和練習(xí) A: 奇數(shù)求和練習(xí)a: 題目分析為了記錄累加和的值,我們需要定義一個存儲累加和的變量我們要獲取到...
    Tyihou閱讀 594評論 0 0
  • Java經(jīng)典問題算法大全 /*【程序1】 題目:古典問題:有一對兔子,從出生后第3個月起每個月都生一對兔子,小兔子...
    趙宇_阿特奇閱讀 2,077評論 0 2
  • 剛剛過去的周末,看完了好友推薦的一本《酥油》。 我一直對西藏心存幻想,不管是風(fēng)土還是人情,不管是揚(yáng)名已久的青稞酒,...
    還好你來了閱讀 8,623評論 4 10
  • 為了將盡可能多的石頭和沙子裝入這個空桶里,要怎樣裝好呢?首先裝入大石頭,再裝入小石頭,最后放入沙子。如果采取這樣的...
    是小徐呀閱讀 248評論 0 0

友情鏈接更多精彩內(nèi)容