java語言-第3章-流程控制語句_第1頁
java語言-第3章-流程控制語句_第2頁
java語言-第3章-流程控制語句_第3頁
java語言-第3章-流程控制語句_第4頁
java語言-第3章-流程控制語句_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

基于java語言深入理解程序邏輯第三章

流程控制語句回憶java語言有哪些根本數(shù)據(jù)類型?Scanner類到用法是什么?學(xué)習(xí)內(nèi)容選擇和分支結(jié)構(gòu)循環(huán)結(jié)構(gòu)能力目標(biāo)熟練使用根本的、多重的和嵌套的if-else語句熟練使用switch分支語句熟練使用while和do-while語句進(jìn)行循環(huán)操作熟練使用for語句進(jìn)行循環(huán)操作算法和流程圖程序結(jié)構(gòu)順序結(jié)構(gòu)一段程序按照出現(xiàn)的順序依次執(zhí)行分支結(jié)構(gòu)根據(jù)條件判斷的結(jié)果不同,執(zhí)行不同的功能循環(huán)結(jié)構(gòu)重復(fù)執(zhí)行一段代碼2、如果令狐沖的C語言考試成績大于90分,師父就獎勵他一本武功秘笈選擇和分支結(jié)構(gòu)使用if條件結(jié)構(gòu)可以解決條件成立條件不成立語句塊1語句塊2if-else4、如果令狐沖考試成績大于90分,師父就獎勵他《獨(dú)孤九劍》,否那么師父就罰他上思過崖閉關(guān)思過使用兩個根本if條件結(jié)構(gòu)使用if-else條件結(jié)構(gòu)實(shí)現(xiàn)if(score>90){System.out.println("師父說:不錯,給你《獨(dú)孤九劍》劍譜");}if(score<=90){System.out.println("師父說:不孝徒,上思過崖閉關(guān)思過去吧");}如何使用if條件結(jié)構(gòu)6-5

if-else條件結(jié)構(gòu)if(條件){//語句1}else{//語句2}if(令狐沖考試成績>90){師父獎勵令狐沖;}else{師父罰他閉關(guān)思過;}結(jié)合問題4真表達(dá)式語句1假語句2使用if-else條件結(jié)構(gòu)解決問題4publicclassJianghu{publicstaticvoidmain(String[]args){intscore=89;//令狐沖的語文成績

if(score>90){ System.out.println("師父說:不錯,給你《獨(dú)孤九劍》劍譜");}else{ System.out.println("師父說:不孝徒,上思過崖閉關(guān)思過去吧");}}}演示例如4:使用if-else結(jié)構(gòu)如何使用if條件結(jié)構(gòu)6-6為什么使用多重if結(jié)構(gòu)5、對學(xué)員的結(jié)業(yè)考試成績評測成績>=90:優(yōu)秀成績>=80:良好 成績>=60:中等成績<60:差使用多重if結(jié)構(gòu)多重if結(jié)構(gòu)就是在else局部中還包含其他if塊什么是多重if結(jié)構(gòu)if

(條件){//語句}

elseif

(條件)

{//語句}else

{//語句}可以有多個可以省略多重if結(jié)構(gòu)假真真假表達(dá)式1語句1表達(dá)式2語句2語句3如何使用多重if結(jié)構(gòu)使用多重if結(jié)構(gòu)解決問題5

int

score=70;//考試成績

if(score>=90){

System.out.println("優(yōu)秀");}

elseif(score>=80){

System.out.println("良好");}

elseif(score>=60){

System.out.println("中等");}

else{

System.out.println("差");}大于等于90分大于等于60分,小于80分小于60分大于等于80分,小于90分完整代碼演示演示例如5:使用多重if結(jié)構(gòu)為什么使用switch結(jié)構(gòu)6、令狐沖參加比武大會如果獲得第一名,將出任武林盟主如果獲得第二名,將出任武當(dāng)掌門如果獲得第三名,將出任峨嵋掌門否那么,將被逐出師門使用if條件結(jié)構(gòu)如何實(shí)現(xiàn)實(shí)現(xiàn)代碼更好的解決方法:使用switch結(jié)構(gòu)解決switch(表達(dá)式){

case

常量1:

語句;

break;

case

常量2:

語句;

break;

default:

語句;}switch結(jié)構(gòu)什么是switch結(jié)構(gòu)計(jì)算表達(dá)式的值如果等于常量1

如果等于常量2

如果沒有找到匹配的值

使用switch結(jié)構(gòu)解決問題6如何使用switch結(jié)構(gòu)intmingCi=1;switch(mingCi){

case

1:System.out.println("出任武林盟主");

break;

case2:System.out.println("出任武當(dāng)掌門");

break;

case3:System.out.println("出任峨嵋掌門");

break;

default:System.out.println("被逐出師門");}第一名的情況下第二名的情況下第三名的情況下其他情況下完整代碼演示演示例如6:使用switch結(jié)構(gòu)比較switch和多重if結(jié)構(gòu)相同點(diǎn)不同點(diǎn)switch多重if都可以實(shí)現(xiàn)多分支結(jié)構(gòu)只能處理等值的條件判斷,且條件是整型變量或字符變量的等值判斷處理在else局部還包含其它if結(jié)構(gòu),特別適合某個變量處于某個區(qū)間時(shí)的情況小結(jié)2輸入趙本山的考試成績,顯示所獲獎勵成績==100分,爸爸給他買輛車成績>=90分,媽媽給他買MP490分>成績>=60分,媽媽給他買本參考書成績<60分,什么都不買參考代碼張三為他的設(shè)定了自動撥號按1:撥爸爸的號按2:撥媽媽的號按3:撥爺爺?shù)奶柊?:撥奶奶的號編程實(shí)現(xiàn)此業(yè)務(wù)參考代碼while循環(huán)特點(diǎn):先判斷,再執(zhí)行while(循環(huán)條件){

循環(huán)操作}符合條件,循環(huán)繼續(xù)執(zhí)行;否那么,循環(huán)退出循環(huán)中被重復(fù)執(zhí)行的操作int

i=1;while(i<=30

){

System.out.println("我能行!"); i++;}編碼標(biāo)準(zhǔn):縮進(jìn)、換行循環(huán)操作循環(huán)條件真假3、如何用程序描述下面這個故事呢?為了備戰(zhàn),令狐沖鍥而不舍地練習(xí),盈盈嚴(yán)格把關(guān)…“盈盈,怎么樣,可以了嗎?”“不行,吉他還不是很好,街舞還要繼續(xù)練??!”沒有聽到“很棒”的評價(jià),看來革命尚未成功,令狐沖修煉不止:早上5點(diǎn)練街舞,上午練吉他,下午練唱歌。循環(huán)條件循環(huán)操作使用while循環(huán)的步驟1、分析循環(huán)條件和循環(huán)操作2、套用while語法寫出代碼3、檢查循環(huán)是否能夠退出怎樣使用while循環(huán)3-1怎樣使用while循環(huán)3-2System.out.print("表演得怎么樣

?(y/n):");answer=input.next();while(!answer.equals("y"))

{ System.out.println("早上5點(diǎn)開始街舞

!"); System.out.println("上午練習(xí)吉他!"); System.out.println("下午練習(xí)唱歌

!");

System.out.println("晚上練習(xí)踢踏舞!");

System.out.print("表演得怎樣

?(y/n):"); answer=input.next();}System.out.println("圓滿完成

!");循環(huán)條件循環(huán)操作比較兩個String類型的值是否相等演示例如3:使用while循環(huán)結(jié)構(gòu)do-while循環(huán)5、如何用程序講述下面的故事?苦練半年,眼看大賽在即,盈盈提議:彩排一次,如果很令人滿意,以后就不用彩排了,否那么每天都要彩排,直到現(xiàn)場表現(xiàn)讓她滿意為止!他能否用動人的街舞震撼盈盈,用美妙的吉他聲博得贊賞呢?……do{ 循環(huán)操作}while(循環(huán)條件);while(循環(huán)條件){ 循環(huán)操作}while循環(huán)先判斷,再執(zhí)行不適合描述此故事?什么是do-while循環(huán)do{

循環(huán)操作}while(循環(huán)條件);先執(zhí)行一遍循環(huán)操作符合條件,循環(huán)繼續(xù)執(zhí)行;否那么,循環(huán)退出特點(diǎn):先執(zhí)行,再判斷循環(huán)操作循環(huán)條件真假怎樣使用do-while循環(huán)2-1do{ System.out.println("街舞

!"); System.out.println("演奏肖邦吉他曲

!"); System.out.print("可以了嗎

?(y/n):"); answer=input.next();}while(!answer.equals("y")

);System.out.println("大功告成

!");循環(huán)條件先執(zhí)行一遍循環(huán)操作演示例如5:使用do-while循環(huán)結(jié)構(gòu)for循環(huán)的語法和執(zhí)行順序什么是for循環(huán)for(

;

;

){

;}條件為true循環(huán)體被執(zhí)行for(inti=0;i<100;i++){System.out.println("我最棒");}代碼標(biāo)準(zhǔn):格式對齊、代碼的縮進(jìn)表達(dá)式1表達(dá)式2表達(dá)式3循環(huán)操作參數(shù)初始化條件判斷更新循環(huán)變量1243如何使用for循環(huán)3-11、循環(huán)錄入令狐沖S1的5門課成績,計(jì)算平均分循環(huán)次數(shù):5循環(huán)條件:循環(huán)的次數(shù)缺乏5,繼續(xù)循環(huán)循環(huán)操作:錄入成績,計(jì)算成績之和使用for循環(huán)結(jié)構(gòu)的步驟1、分析循環(huán)條件和循環(huán)操作2、套用for語法寫出代碼3、檢查循環(huán)是否能夠退出結(jié)合問題1如何使用for循環(huán)3-2//省略聲明變量

for(inti=0;i<5;i++){//循環(huán)5次錄入5門課成績System.out.print("請輸入5門功課中第"+(i+1)+"門課的成績:");score=input.nextInt();sum=sum+score;}avg=sum/5;//計(jì)算平均分System.out.println(name+"的平均分是:"+avg);初始值:i=0循環(huán)條件:i<5循環(huán)變量改變:i++循環(huán)操作執(zhí)行5次演示例如1:使用for循環(huán)結(jié)構(gòu)完整代碼如何使用for循環(huán)3-32、輸出如下圖加法表for(inti=0,j=val;i<=val;i++,j--){System.out.println(i+"+"+j+"="+(i+j));}1、循環(huán)初始化:i=0;j=輸入值2、循環(huán)條件:i<=輸入值3、循環(huán)操作:計(jì)算i+j4、循環(huán)變量的改變:i++,j--完整代碼表達(dá)式3可以是用“,”隔開的多個表達(dá)式,運(yùn)算順序從左到右表達(dá)式1中可以聲明多個同一類型的值并賦值,用“,”隔開演示例如2:使用for循環(huán)結(jié)構(gòu)for循環(huán)常見問題4-1for(;i<10;i++){System.out.println("這是"+i);}inti=0;編譯錯誤:變量i沒有初始化for(<初始化循環(huán)變量>;<循環(huán)條件>;<修改循環(huán)變量的值>){

<循環(huán)體語句>;}不能省略可省略表達(dá)式1省略,循環(huán)變量的初始值在for語句之前由賦值語句取得什么是break語句break:改變程序控制流用于do-while、while、for中時(shí),可跳出循環(huán)而執(zhí)行循環(huán)后面的語句while(…){………………

break;………………}跳出整個循環(huán)break通常在循環(huán)中與條件語句一起使用如何使用break語句2-13、循環(huán)錄入某學(xué)生5門課的成績并計(jì)算平均分,如果某分?jǐn)?shù)錄入為負(fù),停止錄入并提示錄入錯誤循環(huán)錄入成績,判斷錄入正確性:錄入錯誤,使用break語句立刻跳出循環(huán);否那么,累加求和演示例如3:使用break語句如何使用break語句2-2……for(inti=0;i<5;i++){//循環(huán)5次錄入5門課成績System.out.print("請輸入5門功課中第"+(i+1)+"門課的成績:");score=input.nextInt();//從控制臺接收數(shù)據(jù)

if(score<0){wrong=false;//出錯標(biāo)識

break;//退出循環(huán)}sum=sum+score;}…循環(huán)外的語句…對錄入的分?jǐn)?shù)進(jìn)行判斷,如果小于0,標(biāo)記出錯狀態(tài),并立即跳出整個for循環(huán)問題3完整代碼演示1~10之間的整數(shù)相加,得到累加值大于20的當(dāng)前數(shù)1、使用循環(huán)進(jìn)行累加,從1到102、判斷累加值是否大于203、如果大于20,那么跳出循環(huán),并打印當(dāng)前值//定義一個變量,進(jìn)行累加

intsum=0;

for(inti=1;i<=10;i++){sum=sum+i;

if(sum>20){System.out.print("當(dāng)前數(shù)是:"+i);

break;}}小結(jié)2演示運(yùn)行效果為什么需要continue語句4、循環(huán)錄入Java課的學(xué)生成績,統(tǒng)計(jì)分?jǐn)?shù)大于等于80分的學(xué)生比例1、通過循環(huán),獲得分?jǐn)?shù)大于等于80分的學(xué)生人數(shù)num2、判斷:如果成績<80,不執(zhí)行num++,直接進(jìn)入下一次循環(huán)continue語句continue:只能用在循環(huán)里continue

作用:跳過循環(huán)體中剩余的語句而執(zhí)行下一次循環(huán)while(…){………………

continue;…………}繼續(xù)下一次循環(huán)通常與條件語句一起使用,加速循環(huán)如何使用continue

for(inti=0;i<total;i++){

System.out.print("請輸入第"+(i+1)+"位學(xué)生的成績:");score=input.nextInt();

if(score<80){

continue;}num++;//大于等于80分的人數(shù)}doublerate=(double)num/total*100;System.out.println("80分以上的學(xué)生所占的比例為:"+rate+"%");對錄入的分?jǐn)?shù)進(jìn)行判斷,如果小于80,跳出本次循環(huán),執(zhí)行下一次循環(huán)問題4完整代碼1、使用循環(huán)進(jìn)行累加,循環(huán)的范圍是從1至102、判斷當(dāng)前數(shù)是否為偶數(shù)3、如果為奇數(shù)跳過,執(zhí)行下一個循環(huán),如果為偶數(shù),進(jìn)行累加intsum=0;//定義一個變量,進(jìn)行累加for(inti=1;i<=10;i++){

if(i%2==1){

continue;

//如果i為奇數(shù),結(jié)束本次循環(huán),

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論