循環(huán)結(jié)構(gòu)

幾個(gè)問題

張三oracle考試成績未達(dá)到自己的目標(biāo)域醇。為了表明自己勤奮學(xué)習(xí)的決心将鸵,他決定寫一百遍“好好學(xué)習(xí)误堡,天天向上界赔!”

循環(huán)結(jié)構(gòu)語法

循環(huán)結(jié)構(gòu)就是反復(fù)的執(zhí)行同一段代碼丢习,直到符合某個(gè)條件后退出,循環(huán)結(jié)構(gòu)分為兩種:while循環(huán)和for循環(huán)淮悼。


image.png

特點(diǎn):先判斷版保,再執(zhí)行


image.png

一個(gè)練習(xí)

老師每天檢查張三的學(xué)習(xí)任務(wù)是否合格萝招,如果不合格岭皂,則繼續(xù)進(jìn)行摘完。
老師給張三安排的每天的學(xué)習(xí)任務(wù)為:上午閱讀教材,學(xué)習(xí)理論部分羹令,下午上機(jī)編程鲤屡,掌握代碼部分。

  • 分析是否存在重復(fù)操作
  • 使用while循環(huán)實(shí)現(xiàn)
  1. 確定循環(huán)條件和循環(huán)操作
  2. 套用while語法寫出代碼
  3. 檢查循環(huán)是否能夠退出


    image.png
boolean b = true;//標(biāo)志
        while(b){//當(dāng)b為true時(shí)福侈,一直循環(huán)
            System.out.println("合格了嗎执俩?(y/n):");
            Scanner sc = new Scanner(System.in);
            String res = sc.next();
            if(res.equals("n")){//相當(dāng)于res=="n"
                System.out.println("不合格,繼續(xù)學(xué)習(xí)");
            }else{
                System.out.println("合格");
                b = false;
            }
        }
    
    System.out.println("程序結(jié)束");
練習(xí)二

2012年培養(yǎng)學(xué)員10萬人癌刽,每年增長20%,請問按此增長速度尝丐,到哪一年培訓(xùn)學(xué)員人數(shù)將達(dá)到100萬人显拜?

提示:循環(huán)條件和循環(huán)操作分別是什么?
2爹袁、2013年培訓(xùn)學(xué)員數(shù)量 = 100000 * (1 + 0.2 )
3远荠、int year = 2012;
double students = 100000;
while …

public class whileDemo2 {
    public static void main(String[] args) {
//        2012年培養(yǎng)學(xué)員10萬人,每年增長20%失息,
// 請問按此增長速度譬淳,到哪一年培訓(xùn)學(xué)員人數(shù)將達(dá)到100萬人档址?

        int year = 2012;
        double personCount = 100000;
        while(personCount <= 1000000)
        {
            //增加年數(shù)
            year++;
            //增加人數(shù)(1.2)
            personCount = personCount*1.2;
            System.out.println(year+"年"+personCount+"人");
        }
        System.out.println(year);
    }
}
另一個(gè)問題(do-while循環(huán))

經(jīng)過幾天的學(xué)習(xí),老師給張三一道測試題邻梆,
讓他先上機(jī)編寫程序完成守伸,
然后老師檢查是否合格。如果不合格浦妄,則繼續(xù)編寫尼摹。……

image.png

image.png

特點(diǎn):先執(zhí)行剂娄,再判斷

while循環(huán)和do-while循環(huán)的區(qū)別

  • 執(zhí)行次序不同
  • 初始情況不滿足循環(huán)條件時(shí)
    while循環(huán)一次都不會(huì)執(zhí)行
    do-while循環(huán)不管任何情況都至少執(zhí)行一次

作業(yè)

實(shí)現(xiàn)整數(shù)反轉(zhuǎn) 用戶輸入任意一個(gè)數(shù)字比如12345蠢涝,程序輸出54321
要求用循環(huán)實(shí)現(xiàn),并練習(xí)調(diào)試技巧

Scanner scanner =  new Scanner(System.in);
        System.out.println("請輸入一個(gè)數(shù)");
        int num = scanner.nextInt();

        //12345模10能到最后一位阅懦,輸出它和二,再除以10,1234
        //重復(fù)上一步
        while(num>0)
        {
            //12345模10能到最后一位,輸出它耳胎,再除以10,1234
            System.out.print(num % 10);
            num = num / 10;
        }

for循環(huán)

問題回顧 輸出100次“好好學(xué)習(xí)惯吕!”


image.png

for循環(huán)的語法和執(zhí)行順序


image.png

問題

循環(huán)輸入某同學(xué)高考考試的5門課成績,并計(jì)算平均分

分析
循環(huán)次數(shù)固定
使用for循環(huán)結(jié)構(gòu)的步驟
1场晶、分析循環(huán)條件和循環(huán)操作
2混埠、套用for語法寫出代碼
3、檢查循環(huán)是否能夠退出

循環(huán)條件:循環(huán)的次數(shù)不足5诗轻,繼續(xù)循環(huán)
循環(huán)操作:錄入成績钳宪,計(jì)算成績之和

public class whileDemo2 {
    public static void main(String[] args) {

        //循環(huán)輸入某同學(xué)高考考試的5門課成績,并計(jì)算平均分
        Scanner scanner = new Scanner(System.in);
        System.out.println("輸入學(xué)生姓名");
        String name = scanner.next();

        int score = 0;
        int total = 0;
        for(int i = 1; i <= 5; i++)
        {
            System.out.println("請輸入"+i+"成績");
            score = scanner.nextInt();
            total = total + score;
        }

        System.out.println(name+"的平均成績是"+total/5);
    }

}

輸出如圖所示加法表

image.png

使用for循環(huán):
1扳炬、循環(huán)初始化:i = 0吏颖;j = 輸入值
2、循環(huán)條件:i<=輸入值
3恨樟、循環(huán)操作:計(jì)算i+j
4半醉、循環(huán)變量的改變:i++,j--

public class whileDemo2 {
    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);
        System.out.println("請輸入一個(gè)值");
        int num = scanner.nextInt();//6

        int j = num;
        for(int i = 0; i <= num; i++)
        {

            System.out.println(i+"+"+j+"="+num);
            j--;
        }

    }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末劝术,一起剝皮案震驚了整個(gè)濱河市缩多,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌养晋,老刑警劉巖衬吆,帶你破解...
    沈念sama閱讀 218,284評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異绳泉,居然都是意外死亡逊抡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評論 3 395
  • 文/潘曉璐 我一進(jìn)店門零酪,熙熙樓的掌柜王于貴愁眉苦臉地迎上來冒嫡,“玉大人拇勃,你說我怎么就攤上這事⌒⒘瑁” “怎么了方咆?”我有些...
    開封第一講書人閱讀 164,614評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長胎许。 經(jīng)常有香客問我峻呛,道長,這世上最難降的妖魔是什么辜窑? 我笑而不...
    開封第一講書人閱讀 58,671評論 1 293
  • 正文 為了忘掉前任钩述,我火速辦了婚禮,結(jié)果婚禮上穆碎,老公的妹妹穿的比我還像新娘牙勘。我一直安慰自己,他們只是感情好所禀,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,699評論 6 392
  • 文/花漫 我一把揭開白布方面。 她就那樣靜靜地躺著,像睡著了一般色徘。 火紅的嫁衣襯著肌膚如雪恭金。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,562評論 1 305
  • 那天褂策,我揣著相機(jī)與錄音横腿,去河邊找鬼。 笑死斤寂,一個(gè)胖子當(dāng)著我的面吹牛耿焊,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播遍搞,決...
    沈念sama閱讀 40,309評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼罗侯,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了溪猿?” 一聲冷哼從身側(cè)響起钩杰,我...
    開封第一講書人閱讀 39,223評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎诊县,沒想到半個(gè)月后榜苫,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,668評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡翎冲,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,859評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了媳荒。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片抗悍。...
    茶點(diǎn)故事閱讀 39,981評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡驹饺,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出缴渊,到底是詐尸還是另有隱情赏壹,我是刑警寧澤,帶...
    沈念sama閱讀 35,705評論 5 347
  • 正文 年R本政府宣布衔沼,位于F島的核電站蝌借,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏指蚁。R本人自食惡果不足惜菩佑,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,310評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望凝化。 院中可真熱鬧稍坯,春花似錦、人聲如沸搓劫。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽枪向。三九已至勤揩,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間秘蛔,已是汗流浹背陨亡。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留缠犀,地道東北人数苫。 一個(gè)月前我還...
    沈念sama閱讀 48,146評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像辨液,于是被迫代替她去往敵國和親虐急。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,933評論 2 355

推薦閱讀更多精彩內(nèi)容