《《java循環(huán)結(jié)構(gòu)》PPT課件.ppt》由會員分享,可在線閱讀,更多相關(guān)《《java循環(huán)結(jié)構(gòu)》PPT課件.ppt(34頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、循環(huán)結(jié)構(gòu)(一),第五章,分別寫出運行結(jié)果,switch(day){ case 1: System.out.println("法國大餐"); break; case 2: case 4: System.out.println("滿漢全席"); break; case 7: if (weekOfMonth == 1) { System.out.println("蘋果餐"); } else { System.out.println("香蕉餐"); } break; },,法國大餐,香蕉餐,,回顧與作業(yè)點評,舉
2、例說明,循環(huán)結(jié)構(gòu)用于解決哪些問題? 循環(huán)結(jié)構(gòu)中使用了哪些關(guān)鍵字? 程序調(diào)試有哪些步驟?,預(yù)習(xí)檢查,實現(xiàn)MyShopping 查詢商品價格 升級購物結(jié)算 升級菜單切換,本章任務(wù),理解循環(huán)的含義 會使用while循環(huán)結(jié)構(gòu) 會使用do-while循環(huán)結(jié)構(gòu) 會使用調(diào)試解決簡單的程序錯誤,本章目標(biāo),System.out.println("第1遍寫:好好學(xué)習(xí),天天向上!"); System.out.println(“第2遍寫:好好學(xué)習(xí),天天向上!"); …… System.out.println(“第100遍寫:好好學(xué)習(xí),天天向上!");,,,,100條,為什么需要循環(huán)2-1,決定寫一萬遍“好好學(xué)習(xí),天天
3、向上!” ,怎么辦?,1、張浩Java考試成績未達(dá)到自己的目標(biāo)。為了表明自己勤奮學(xué)習(xí)的決心,他決定寫一百遍“好好學(xué)習(xí),天天向上!”,System.out.println("第1遍寫:好好學(xué)習(xí),天天向上!"); System.out.println(“第2遍寫:好好學(xué)習(xí),天天向上!"); System.out.println("第3遍寫:好好學(xué)習(xí),天天向上!"); System.out.println(“第4遍寫:好好學(xué)習(xí),天天向上!"); …… System.out.println(“第9999遍寫:好好學(xué)習(xí),天天向上!"); System.out.println(“第10000遍寫:好好學(xué)習(xí)
4、,天天向上!");,int i = 1; while ( i <= 100 ){ System.out.println(“第” +i+ “遍寫: 好好學(xué)習(xí),天天向上!"); i ++; },i<=10000,為什么需要循環(huán)2-2,沒有使用循環(huán)結(jié)構(gòu),使用while循環(huán),生活中的循環(huán) 循環(huán)結(jié)構(gòu)的特點,打印50份試卷,10000米賽跑,旋轉(zhuǎn)的車輪,,鍥而不舍地學(xué)習(xí),什么是循環(huán),特點:先判斷,再執(zhí)行,while ( 循環(huán)條件 ) { 循環(huán)操作 },符合條件,循環(huán)繼續(xù)執(zhí)行;否則,循環(huán)退出,循環(huán)中被重復(fù)執(zhí)行的操作,int i = 1; while ( i <= 100 ) {
5、 System.out.println("好好學(xué)習(xí)!"); i ++; },,,編碼規(guī)范:縮進、換行,什么是while循環(huán),,,為了幫助張浩盡快提高成績,老師給他安排了每天的學(xué)習(xí)任務(wù), 其中上午閱讀教材,學(xué)習(xí)理論部分,下午上機編程,掌握代碼部分。 老師每天檢查學(xué)習(xí)成果。如果不合格,則繼續(xù)進行,,,循環(huán)條件,循環(huán)操作,,怎樣使用while循環(huán)2-1,使用while循環(huán)的步驟 1、分析循環(huán)條件和循環(huán)操作 2、套用while語法寫出代碼 3、檢查循環(huán)是否能夠退出,2、如何用程序描述下面這個故事呢?,System.out.print("合格了嗎?(y/n):"); String answer
6、= input.next(); while(!"y".equals(answer)){ System.out.println("上午閱讀教材!"); System.out.println("下午上機編程!\n"); System.out.print("合格了嗎?(y/n):"); answer = input.next(); } System.out.println("完成學(xué)習(xí)任務(wù)!");,,,循環(huán)條件,循環(huán)操作,比較兩個String類型的值是否相等,怎樣使用while循環(huán)2-2,避免死循環(huán),小結(jié)1,2006年培養(yǎng)學(xué)員8萬人,每年增長25%,請問按此增長速度,到哪一年培訓(xùn)學(xué)員
7、人數(shù)將達(dá)到20萬人?,提示: 1、循環(huán)條件和循環(huán)操作分別是什么? 2、int year = 2006; double students = 80000; while … 3、2007年培訓(xùn)學(xué)員數(shù)量 = 80000 * (1 + 0.25 ),參考代碼,為什么需要程序調(diào)試,3、在編寫程序過程中有時也出現(xiàn)錯誤,但不好發(fā)現(xiàn)和定位錯誤,有沒有好的方法呢? 通過代碼閱讀或者加輸出語句查找程序錯誤 當(dāng)程序結(jié)構(gòu)越來越復(fù)雜時,需要專門的技術(shù)來發(fā)現(xiàn)和定位錯誤,就是“程序調(diào)試”,生活案例:電器調(diào)試,儀表調(diào)試 當(dāng)程序出錯時,我們也希望能這樣: 程序執(zhí)行時忽閃一下就運行結(jié)束,怎么讓程序一步一步運行?,程序調(diào)試,
8、斷點: 程序暫停執(zhí)行的代碼行,什么是程序調(diào)試,,int i = 1; System.out.println("程序調(diào)試演示,注意觀察i的值:"); while(i < 5){ System.out.println(i); i++; },只打印了4次!怎么查找錯誤呢?,如何進行程序調(diào)試5-1,4、順序輸出1~5這5個數(shù)字,步驟1:分析錯誤,設(shè)置斷點 步驟2:啟動調(diào)試,,啟動調(diào)試,,雙擊對應(yīng)代碼行的左側(cè)邊欄即可設(shè)置斷點,如何進行程序調(diào)試5-2,步驟3:單步運行 調(diào)試啟動后,運行到設(shè)置斷點的代碼行將停住 點擊F6鍵可以單步運行程序,觀察程序運行過程,,單擊按鈕,單步運行,,單擊“繼續(xù)”按鈕
9、或F8,執(zhí)行時只在斷點處停下,如何進行程序調(diào)試5-3,F5:單步跳入 F6:單步跳過,步驟4:觀察變量 單步運行時可以在“變量”視圖中看到變量當(dāng)前的值,如何進行程序調(diào)試5-4,步驟5:發(fā)現(xiàn)問題 變量i值變?yōu)?時就退出了循環(huán),循環(huán)只進行4次 步驟6:修正代碼,重新運行 修改循環(huán)條件為: i <= 5 步驟7:解決問題,如何進行程序調(diào)試5-5,小結(jié)2,1、程序調(diào)試的目的? 2、程序調(diào)試的主要方法?,找出缺陷原因,修正缺陷,設(shè)置斷點、單步執(zhí)行、觀察變量,指導(dǎo)——計算100以內(nèi)偶數(shù)之和,訓(xùn)練要點: while循環(huán)結(jié)構(gòu) 程序調(diào)試 需求說明: 編程實現(xiàn):計算100以內(nèi)(包括100)的偶數(shù)之和 觀察每一次
10、循環(huán)中變量值的變化 實現(xiàn)思路: 1、聲明整型變量num和sum 2、循環(huán)條件:num<=100 3、循環(huán)操作:累加求和,講解需求說明,完成時間:20分鐘,指導(dǎo)——查詢商品價格,訓(xùn)練要點: while循環(huán)結(jié)構(gòu) 程序調(diào)試 需求說明: 循環(huán)輸入商品編號,顯示對應(yīng)的商品價格 輸入“n”結(jié)束循環(huán) 實現(xiàn)思路: 1、聲明變量 2、循環(huán)體 3、循環(huán)條件 難點指導(dǎo): 循環(huán)體內(nèi)使用switch,講解需求說明,完成時間:25分鐘,練習(xí)——升級購物結(jié)算,需求說明: 循環(huán)輸入商品編號和購買數(shù)量 當(dāng)輸入n時結(jié)賬 結(jié)賬時計算應(yīng)付金額并找零,完成時間:25分鐘,共性問題集中講解,常見調(diào)試問題及解決辦法 代碼規(guī)范問題,共性問題
11、集中講解,,經(jīng)過幾天的學(xué)習(xí),老師給張浩一道測試題, 讓他先上機編寫程序完成, 然后老師檢查是否合格。如果不合格,則繼續(xù)編寫?!?do { 循環(huán)操作 }while ( 循環(huán)條件 );,while (循環(huán)條件){ 循環(huán)操作 },while循環(huán)先判斷,再執(zhí)行不適合描述此故事,,?,,為什么需要do-while循環(huán),5、如何用程序講述下面的故事?,,do { 循環(huán)操作 } while ( 循環(huán)條件 );,先執(zhí)行一遍循環(huán)操作,符合條件,循環(huán)繼續(xù)執(zhí)行;否則,循環(huán)退出,,什么是do-while循環(huán),特點:先執(zhí)行,再判斷,分號不可少,,do{ System.out.println("上機編寫程序!"
12、); System.out.print("合格了嗎?(y/n)"); answer = input.next(); System.out.println(""); }while(!"y".equals(answer)); System.out.println("恭喜你通過了測試!");,,,循環(huán)條件,先執(zhí)行一遍循環(huán)操作,怎樣使用do-while循環(huán),while循環(huán)和do-while循環(huán)的區(qū)別 語法不同 執(zhí)行次序不同 初始情況不滿足循環(huán)條件時 while循環(huán)一次都不會執(zhí)行 do-while循環(huán)不管任何情況都至少執(zhí)行一次,do { 循環(huán)操作 } while( 循環(huán)條件 ) ;,whil
13、e ( 循環(huán)條件 ) { 循環(huán)操作 },先判斷,再執(zhí)行,先執(zhí)行,再判斷,比較while和do-while,小結(jié)3,使用do-while實現(xiàn):輸出攝氏溫度與華氏溫度的對照表,要求它從攝氏溫度0度到250度,每隔20度為一項,對照表中的條目不超過10條。 轉(zhuǎn)換關(guān)系:華氏溫度 = 攝氏溫度 * 9 / 5.0 + 32,提示: 1、循環(huán)操作:計算攝氏溫度,并輸出對照條目 2、循環(huán)條件:條目<=10 && 攝氏溫度 <= 250,參考代碼,練習(xí)——升級菜單切換,需求說明: 如果用戶輸入錯誤,可以重復(fù)輸入直到輸入正確,執(zhí)行相應(yīng)的操作后退出循環(huán),完成時間:20分鐘,共性問題集中講解,常見調(diào)試問題及解決辦法 代碼規(guī)范問題,共性問題集中講解,,,循環(huán)結(jié)構(gòu)的特點是什么? while循環(huán)和do-while循環(huán)有什么區(qū)別? 如何設(shè)置斷點和啟動調(diào)試?,總結(jié),作業(yè),課后作業(yè) 必做 教員備課時在此添加內(nèi)容 選做 教員備課時在此添加內(nèi)容 提交時間:xxx 提交形式:xxx 預(yù)習(xí)作業(yè) 背誦英文單詞 教員備課時在此添加內(nèi)容,