Java程序設(shè)計(jì)基礎(chǔ) 課件 第3章 控制結(jié)構(gòu)_第1頁
Java程序設(shè)計(jì)基礎(chǔ) 課件 第3章 控制結(jié)構(gòu)_第2頁
Java程序設(shè)計(jì)基礎(chǔ) 課件 第3章 控制結(jié)構(gòu)_第3頁
Java程序設(shè)計(jì)基礎(chǔ) 課件 第3章 控制結(jié)構(gòu)_第4頁
Java程序設(shè)計(jì)基礎(chǔ) 課件 第3章 控制結(jié)構(gòu)_第5頁
已閱讀5頁,還剩64頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第3章控制結(jié)構(gòu)1教學(xué)目標(biāo)(1) 使用單分支if語句實(shí)現(xiàn)選擇控制(2) 使用雙分支if-else語句實(shí)現(xiàn)選擇控制(3) 使用嵌套的if語句和多分支if語句實(shí)現(xiàn)選擇控制(4) 使用switch語句實(shí)現(xiàn)選擇控制(5) 使用選擇結(jié)構(gòu)實(shí)現(xiàn)判斷閏年、判斷一個(gè)人的生肖屬相(6) 使用while循環(huán)語句實(shí)現(xiàn)循環(huán)控制,理解計(jì)數(shù)器控制的循環(huán)(7) 使用do-while循環(huán)語句實(shí)現(xiàn)循環(huán)控制,理解標(biāo)記控制的循環(huán)(8) 使用for循環(huán)語句實(shí)現(xiàn)循環(huán)控制,理解三種循環(huán)結(jié)構(gòu)的異同(9) 掌握嵌套循環(huán)的使用(10) 掌握break語句、continue語句,理解用戶確認(rèn)的循環(huán)。(11) 綜合應(yīng)用選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)實(shí)現(xiàn)一些有趣示例:求π值、百錢買白雞問題、輸出素?cái)?shù)。2內(nèi)容3.1選擇結(jié)構(gòu)3.1.1單分支結(jié)構(gòu)3.1.2雙分支結(jié)構(gòu)3.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else3.1.4多分支結(jié)構(gòu):switch3.1.5switch新特性3.1.6示例:判斷閏年3.1.7示例:判斷生肖屬相3.2循環(huán)結(jié)構(gòu)3.2.1while循環(huán)3.2.2do-while循環(huán)3.2.3for循環(huán)3.2.4嵌套循環(huán)3.2.5循環(huán)中的break語句3.2.6循環(huán)中的continue語句3.2.7示例:求π值3.2.8示例:百錢買百雞問題3.2.9示例:輸出素?cái)?shù)33.1選擇結(jié)構(gòu)4內(nèi)容3.1選擇結(jié)構(gòu)3.1.1單分支結(jié)構(gòu)3.1.2雙分支結(jié)構(gòu)3.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else3.1.4多分支結(jié)構(gòu):switch3.1.5switch新特性3.1.6示例:判斷閏年3.1.7示例:判斷生肖屬相3.2循環(huán)結(jié)構(gòu)3.2.1while循環(huán)3.2.2do-while循環(huán)3.2.3for循環(huán)3.2.4嵌套循環(huán)3.2.5循環(huán)中的break語句3.2.6循環(huán)中的continue語句3.2.7示例:求π值3.2.8示例:百錢買百雞問題3.2.9示例:輸出素?cái)?shù)53.1.1單分支結(jié)構(gòu)6if(布爾表達(dá)式){

語句(組);}3.1.1單分支結(jié)構(gòu)7示例:簡化示例程序:程序清單3-1SimpleEvenOddTest.java83-1下列代碼的輸出是:xis0xis1xis2xis3ABCD提交intx=0;if(x<4){x=x+1;}System.out.println("xis"+x);單選題1分內(nèi)容3.1選擇結(jié)構(gòu)3.1.1單分支結(jié)構(gòu)3.1.2雙分支結(jié)構(gòu)3.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else3.1.4多分支結(jié)構(gòu):switch3.1.5switch新特性3.1.6示例:判斷閏年3.1.7示例:判斷生肖屬相3.2循環(huán)結(jié)構(gòu)3.2.1while循環(huán)3.2.2do-while循環(huán)3.2.3for循環(huán)3.2.4嵌套循環(huán)3.2.5循環(huán)中的break語句3.2.6循環(huán)中的continue語句3.2.7示例:求值3.2.8示例:百錢買百雞問題3.2.9示例:輸出素?cái)?shù)93.1.2雙分支結(jié)構(gòu)if(布爾表達(dá)式){

語句組1}else{

語句組2}10示例:程序清單3-2SimpleEvenOddTest_v1.java3.1.2雙分支結(jié)構(gòu)條件運(yùn)算符簡化雙分支結(jié)構(gòu):11等價(jià)123-2用if語句表示如下分段函數(shù)f(x),下面程序不正確的是()f=3*x;if(x>=3)f=2*x/(x-1);if(x<3)f=3*x;if(x>=3)f=2*x/(x-1);if(x<3)f=3*xelsef=2*x/(x-1);if(x<3)f=3*x;f=2*x/(x-1);ABCD提交單選題1分內(nèi)容3.1選擇結(jié)構(gòu)3.1.1單分支結(jié)構(gòu)3.1.2雙分支結(jié)構(gòu)3.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else3.1.4多分支結(jié)構(gòu):switch3.1.5switch新特性3.1.6示例:判斷閏年3.1.7示例:判斷生肖屬相3.2循環(huán)結(jié)構(gòu)3.2.1while循環(huán)3.2.2do-while循環(huán)3.2.3for循環(huán)3.2.4嵌套循環(huán)3.2.5循環(huán)中的break語句3.2.6循環(huán)中的continue語句3.2.7示例:求π值3.2.8示例:百錢買百雞問題3.2.9示例:輸出素?cái)?shù)133.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else嵌套if語句是指在單分支if語句或雙分支if-else語句的語句組中嵌入單分支if語句或雙分支if-else語句,而內(nèi)層的單分支if語句或雙分支if-else語句的語句組可以繼續(xù)嵌入單分支if語句或雙分支if-else語句。Java語言對嵌套if語句的嵌套深度沒有限制。143.1.3多分支結(jié)構(gòu):嵌套if和多分支if-elseif(布爾表達(dá)式1){ if(布爾表達(dá)式2){

語句組1}else{

語句組2}

語句組3}else{ if(布爾表達(dá)式3){

語句組4}

語句組5}153.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else163.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else173.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else18else語句匹配同一語句塊中最近的if語句。else語句與哪個(gè)if匹配?注意:課堂思考下面代碼中有什么錯(cuò)誤?19編譯通過,邏輯錯(cuò)誤!203-3下列代碼的輸出結(jié)果:toohottoocoldjustrighttoohottoocoldjustrightABCD提交doubletemperature=50;if(temperature>=100)System.out.println("toohot");elseif(temperature<=40)System.out.println("toocold");elseSystem.out.println("justright");單選題1分內(nèi)容3.1選擇結(jié)構(gòu)3.1.1單分支結(jié)構(gòu)3.1.2雙分支結(jié)構(gòu)3.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else3.1.4多分支結(jié)構(gòu):switch3.1.5switch新特性3.1.6示例:判斷閏年3.1.7示例:判斷生肖屬相3.2循環(huán)結(jié)構(gòu)3.2.1while循環(huán)3.2.2do-while循環(huán)3.2.3for循環(huán)3.2.4嵌套循環(huán)3.2.5循環(huán)中的break語句3.2.6循環(huán)中的continue語句3.2.7示例:求π值3.2.8示例:百錢買百雞問題3.2.9示例:輸出素?cái)?shù)213.1.4多分支結(jié)構(gòu):switchswitch語句的一般形式如下:switch(表達(dá)式){case常量表達(dá)式1:語句組1 break;case常量表達(dá)式2:語句組2 break;…case常量表達(dá)式N:語句組N break;default:語句組N+1}(1)switch語句中的表達(dá)式必須能計(jì)算出一個(gè)char、byte、short、int、枚舉或者String類型的值,并且必須總是用圓括號括住。(2)case語句中,關(guān)鍵字case之后只能是常量表達(dá)式。更具體地說,這里的表達(dá)式不能包含變量。并且,常量表達(dá)式值的數(shù)據(jù)類型必須與表達(dá)式值的數(shù)據(jù)類型相同。(3)當(dāng)表達(dá)式的值與某個(gè)case語句的值相等時(shí),執(zhí)行從該case開始的語句,直到遇到第一個(gè)break語句或者到達(dá)switch語句的末尾。223.1.4多分支結(jié)構(gòu):switchswitch語句的一般形式如下:switch(表達(dá)式){case常量表達(dá)式1:語句組1 break;case常量表達(dá)式2:語句組2 break;…case常量表達(dá)式N:語句組N break;default:語句組N+1}(4)關(guān)鍵字break后加分號(;)構(gòu)成了break語句,break語句是可選的。break語句會(huì)立刻終止switch語句,讓程序執(zhí)行流程轉(zhuǎn)到switch語句之后。(5)default語句是可選的,當(dāng)所有case語句的值和表達(dá)式的值無法匹配時(shí),就執(zhí)行default對應(yīng)的語句組N+1。示例:程序清單3-3SwitchGradeDemo.java233.1.4多分支結(jié)構(gòu):switch直通(fallthrough)行為:指當(dāng)一個(gè)case分支的語句組在執(zhí)行完畢后,如果沒有遇到break語句,則程序繼續(xù)向下執(zhí)行下一個(gè)case分支的語句組,直到碰到break語句或switch語句結(jié)束。24簡化253-4執(zhí)行下列switch語句之后,y是多少?

[填空1]

x=3;y=3;switch(x+3){case6:y=1;default:y+=1;}填空要求:直接寫數(shù)字作答正常使用填空題需3.0以上版本雨課堂填空題1分內(nèi)容3.1選擇結(jié)構(gòu)3.1.1單分支結(jié)構(gòu)3.1.2雙分支結(jié)構(gòu)3.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else3.1.4多分支結(jié)構(gòu):switch3.1.5switch新特性3.1.6示例:判斷閏年3.1.7示例:判斷生肖屬相3.2循環(huán)結(jié)構(gòu)3.2.1while循環(huán)3.2.2do-while循環(huán)3.2.3for循環(huán)3.2.4嵌套循環(huán)3.2.5循環(huán)中的break語句3.2.6循環(huán)中的continue語句3.2.7示例:求π值3.2.8示例:百錢買百雞問題3.2.9示例:輸出素?cái)?shù)263.1.5switch新特性(1)引入箭頭“->”代替了冒號“:”。(2)箭頭->后的語句如果只有一條,可以省略花括號;如果有多條語句時(shí),必須用花括號括起來。而冒號:后的語句不需要使用花括號。(3)不能混合使用箭頭和冒號。(4)關(guān)鍵字case之后可以跟多個(gè)值,這些值之間用逗號分隔。(5)無需break語句。27switch新形式改寫3.1.5switch新特性示例:程序清單3-4NewSwitchGrade.javaswitch表達(dá)式中的case后也可以跟多個(gè)標(biāo)簽,用逗號分隔。switch表達(dá)式還可以使用枚舉類型。例如,一個(gè)枚舉類型如下:enumSeason{SPRING,SUMMER,AUTUMN,WINTER}28StringuserType=switch(userCode){ case0->"鉆石會(huì)員"; case1,2->"黃金會(huì)員"; case3->"白銀會(huì)員"; default->"大眾會(huì)員";};Seasonseason=Season.SPRING;Stringlabel=switch(season){ caseSPRING->"春天"; caseSUMMER->"夏天"; caseAUTUMN->"秋天"; caseWINTER->"冬天"; };3.1.5switch新特性switch表達(dá)式在使用整數(shù)或String值作為圓括號中的操作數(shù)時(shí),必須要有一個(gè)default,因?yàn)闊o論操作數(shù)是什么,這個(gè)表達(dá)式都必須要具有一個(gè)值。如果操作數(shù)是null時(shí),會(huì)拋出一個(gè)NullPointerException。29內(nèi)容3.1選擇結(jié)構(gòu)3.1.1單分支結(jié)構(gòu)3.1.2雙分支結(jié)構(gòu)3.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else3.1.4多分支結(jié)構(gòu):switch3.1.5switch新特性3.1.6示例:判斷閏年3.1.7示例:判斷生肖屬相3.2循環(huán)結(jié)構(gòu)3.2.1while循環(huán)3.2.2do-while循環(huán)3.2.3for循環(huán)3.2.4嵌套循環(huán)3.2.5循環(huán)中的break語句3.2.6循環(huán)中的continue語句3.2.7示例:求π值3.2.8示例:百錢買百雞問題3.2.9示例:輸出素?cái)?shù)303.1.6示例:判斷閏年在公歷中,閏年有366天,二月份是29天,平年有365天,二月份是28天。一個(gè)年份是否閏年的判斷條件是:可以被4整除但不能被100整除,或者可以被400整除。示例:程序清單3-5TestLeapYear.java31內(nèi)容3.1選擇結(jié)構(gòu)3.1.1單分支結(jié)構(gòu)3.1.2雙分支結(jié)構(gòu)3.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else3.1.4多分支結(jié)構(gòu):switch3.1.5switch新特性3.1.6示例:判斷閏年3.1.7示例:判斷生肖屬相3.2循環(huán)結(jié)構(gòu)3.2.1while循環(huán)3.2.2do-while循環(huán)3.2.3for循環(huán)3.2.4嵌套循環(huán)3.2.5循環(huán)中的break語句3.2.6循環(huán)中的continue語句3.2.7示例:求π值3.2.8示例:百錢買百雞問題3.2.9示例:輸出素?cái)?shù)323.1.7示例:判斷生肖屬相在我國,十二生肖,又稱為屬相,是十二地支的形象化代表,包括:(子)鼠、(丑)牛、(寅)虎、(卯)兔、(辰)龍、(巳)蛇、(午)馬、(未)羊、(申)猴、(酉)雞、(戌)狗、(亥)豬。生肖是基于12年一個(gè)周期,示例:程序清單3-6TestChineseZodiac.java33內(nèi)容3.1選擇結(jié)構(gòu)3.1.1單分支結(jié)構(gòu)3.1.2雙分支結(jié)構(gòu)3.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else3.1.4多分支結(jié)構(gòu):switch3.1.5switch新特性3.1.6示例:判斷閏年3.1.7示例:判斷生肖屬相3.2循環(huán)結(jié)構(gòu)3.2.1while循環(huán)3.2.2do-while循環(huán)3.2.3for循環(huán)3.2.4嵌套循環(huán)3.2.5循環(huán)中的break語句3.2.6循環(huán)中的continue語句3.2.7示例:求π值3.2.8示例:百錢買百雞問題3.2.9示例:輸出素?cái)?shù)343.2循環(huán)結(jié)構(gòu)需要循環(huán)操作的示例某段信息重復(fù)輸出100次尋找前50個(gè)素?cái)?shù)并輸出查找并輸出1-1000范圍內(nèi)的水仙花數(shù)3種循環(huán)While循環(huán)do-while循環(huán)for循環(huán)35內(nèi)容3.1選擇結(jié)構(gòu)3.1.1單分支結(jié)構(gòu)3.1.2雙分支結(jié)構(gòu)3.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else3.1.4多分支結(jié)構(gòu):switch3.1.5switch新特性3.1.6示例:判斷閏年3.1.7示例:判斷生肖屬相3.2循環(huán)結(jié)構(gòu)3.2.1while循環(huán)3.2.2do-while循環(huán)3.2.3for循環(huán)3.2.4嵌套循環(huán)3.2.5循環(huán)中的break語句3.2.6循環(huán)中的continue語句3.2.7示例:求π值3.2.8示例:百錢買百雞問題3.2.9示例:輸出素?cái)?shù)363.2.1while循環(huán)while循環(huán)一般形式373.2.1while循環(huán)計(jì)算1-100之間的累加和,即計(jì)算1+2+…+100的值程序清單3-7WhileSum.java概念:循環(huán)控制變量:控制循環(huán)是否繼續(xù)的變量,如示例中的變量i循環(huán)次數(shù):循環(huán)體執(zhí)行次數(shù)計(jì)數(shù)器控制的循環(huán):基于計(jì)數(shù)變量對循環(huán)進(jìn)行控制383.2.1while循環(huán)準(zhǔn)確理解循環(huán)次數(shù)39intsum=0,i=1;while(i<10){sum=sum+i;i++;}System.out.println(“sumis”+sum);//sumis45intsum=0,i=1;while(i<10){ sum=sum+i;}課堂思考40下面的循環(huán)體會(huì)重復(fù)多少次?這個(gè)循環(huán)的輸出是什么?(a)(b)(c)內(nèi)容3.1選擇結(jié)構(gòu)3.1.1單分支結(jié)構(gòu)3.1.2雙分支結(jié)構(gòu)3.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else3.1.4多分支結(jié)構(gòu):switch3.1.5switch新特性3.1.6示例:判斷閏年3.1.7示例:判斷生肖屬相3.2循環(huán)結(jié)構(gòu)3.2.1while循環(huán)3.2.2do-while循環(huán)3.2.3for循環(huán)3.2.4嵌套循環(huán)3.2.5循環(huán)中的break語句3.2.6循環(huán)中的continue語句3.2.7示例:求π值3.2.8示例:百錢買百雞問題3.2.9示例:輸出素?cái)?shù)413.2.2do-while循環(huán)do-while循環(huán)先執(zhí)行循環(huán)體一次,再判斷循環(huán)繼續(xù)條件。do-while循環(huán)的一般形式如下:do{//循環(huán)體語句組}while(循環(huán)繼續(xù)條件);423.2.2do-while循環(huán)累加和示例:do{ sum+=i; i++;}while(i<=100);示例:程序清單3-8DoWhileDemo.java標(biāo)記值控制的循環(huán):使用標(biāo)記值來控制循環(huán)的結(jié)束433.2.2do-while循環(huán)注意:盡量避免使用浮點(diǎn)數(shù)相等比較控制循環(huán)下面一段代碼計(jì)算并輸出1+0.9+…+0.1的值:doubled=1;doublesum=0;while(d!=0){sum+=d;d-=0.1;}System.out.println(sum);44這段代碼從邏輯上看沒問題,也能運(yùn)行。然而在實(shí)際運(yùn)行時(shí),這段代碼是一個(gè)無限循環(huán)。d的值會(huì)遞減到接近于0的浮點(diǎn)數(shù),然而不等于零。這段代碼能否正確完成功能?453-5下面的代碼將打印多少次“WelcometoJava”?()891011ABCD提交intcount=0;do{System.out.println("WelcometoJava");}while(count++<10);單選題1分內(nèi)容3.1選擇結(jié)構(gòu)3.1.1單分支結(jié)構(gòu)3.1.2雙分支結(jié)構(gòu)3.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else3.1.4多分支結(jié)構(gòu):switch3.1.5switch新特性3.1.6示例:判斷閏年3.1.7示例:判斷生肖屬相3.2循環(huán)結(jié)構(gòu)3.2.1while循環(huán)3.2.2do-while循環(huán)3.2.3for循環(huán)3.2.4嵌套循環(huán)3.2.5循環(huán)中的break語句3.2.6循環(huán)中的continue語句3.2.7示例:求π值3.2.8示例:百錢買百雞問題3.2.9示例:輸出素?cái)?shù)463.2.3for循環(huán)for循環(huán)的一般形式如下:47for(初始化表達(dá)式;循環(huán)繼續(xù)條件;每次迭代后表達(dá)式){//循環(huán)體

語句組;}轉(zhuǎn)化3.2.3for循環(huán)48轉(zhuǎn)化示例:程序清單3-9ForSumDemo.java3.2.3for循環(huán)for循環(huán)的初始表達(dá)式可以是0個(gè)或多個(gè)以逗號隔開的變量聲明或賦值表達(dá)式。for循環(huán)的每次迭代后表達(dá)式也可以是0個(gè)或多個(gè)以逗號隔開的表達(dá)式或語句。49for(inti=1,j=1;i*j<=81;i++,j++)

System.out.printf("%d*%d=%d\n",i,j,i*j);for(inti=1,j=1;i*j<=81;System.out.printf("%d*%d=%d\n",i,j,i*j),i++,j++);等價(jià)3.2.3for循環(huán)for循環(huán)的循環(huán)繼續(xù)條件如果被省略,那么隱式地認(rèn)為循環(huán)繼續(xù)條件為true50513-6sum初值為0,完成下面兩個(gè)循環(huán)之后,sum是否具有相同的值()相同不同AB提交for(inti=0;i<10;i++){sum+=i;}//(a)for(inti=0;i<10;++i){sum+=i;}//(b)單選題1分523-7下列代碼的執(zhí)行結(jié)果是()246810135791234512345678910ABCD提交for(inti=1;i<=10;i++){System.out.print(i+"");i++;}單選題1分內(nèi)容3.1選擇結(jié)構(gòu)3.1.1單分支結(jié)構(gòu)3.1.2雙分支結(jié)構(gòu)3.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else3.1.4多分支結(jié)構(gòu):switch3.1.5switch新特性3.1.6示例:判斷閏年3.1.7示例:判斷生肖屬相3.2循環(huán)結(jié)構(gòu)3.2.1while循環(huán)3.2.2do-while循環(huán)3.2.3for循環(huán)3.2.4嵌套循環(huán)3.2.5循環(huán)中的break語句3.2.6循環(huán)中的continue語句3.2.7示例:求π值3.2.8示例:百錢買百雞問題3.2.9示例:輸出素?cái)?shù)533.2.4嵌套循環(huán)嵌套循環(huán)是指一個(gè)循環(huán)體內(nèi)包含一個(gè)或多個(gè)內(nèi)層循環(huán),每個(gè)內(nèi)層循環(huán)還可以包含零個(gè)或多個(gè)內(nèi)層循環(huán)。每當(dāng)外層循環(huán)執(zhí)行一次,其內(nèi)部的內(nèi)層循環(huán)都會(huì)重新開始執(zhí)行。當(dāng)嵌套循環(huán)層次是兩層時(shí),可以稱為兩層循環(huán)。當(dāng)嵌套循環(huán)層次是三層時(shí),可以稱為三層循環(huán)。示例:打印下三角的乘法表(程序清單3-10PrintMultiplyTable.java)54553-8println語句執(zhí)行了多少次?

[填空1]

作答填空題2分內(nèi)容3.1選擇結(jié)構(gòu)3.1.1單分支結(jié)構(gòu)3.1.2雙分支結(jié)構(gòu)3.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else3.1.4多分支結(jié)構(gòu):switch3.1.5switch新特性3.1.6示例:判斷閏年3.1.7示例:判斷生肖屬相3.2循環(huán)結(jié)構(gòu)3.2.1while循環(huán)3.2.2do-while循環(huán)3.2.3for循環(huán)3.2.4嵌套循環(huán)3.2.5循環(huán)中的break語句3.2.6循環(huán)中的continue語句3.2.7示例:求π值3.2.8示例:百錢買百雞問題3.2.9示例:輸出素?cái)?shù)563.2.5循環(huán)中的break語句循環(huán)結(jié)構(gòu)中如果執(zhí)行到break語句,會(huì)立即終止當(dāng)前循環(huán)的執(zhí)行示例:編寫一個(gè)兩位數(shù)的加法練習(xí)程序,判斷正誤。當(dāng)用戶輸入‘N’時(shí),退出加法練習(xí)。當(dāng)用戶輸入其他字符時(shí),繼續(xù)加法練習(xí)。代碼:程序清單3-11AddTestBreak.java用戶確認(rèn)的循環(huán):由用戶輸入確認(rèn)的循環(huán)需要注意的是,在嵌套循環(huán)中,break語句用于終止當(dāng)前層的循環(huán),而不是終止整個(gè)循環(huán)。示例:程序清單3-12NestLoopBreak.java57內(nèi)容3.1選擇結(jié)構(gòu)3.1.1單分支結(jié)構(gòu)3.1.2雙分支結(jié)構(gòu)3.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else3.1.4多分支結(jié)構(gòu):switch3.1.5switch新特性3.1.6示例:判斷閏年3.1.7示例:判斷生肖屬相3.2循環(huán)結(jié)構(gòu)3.2.1while循環(huán)3.2.2do-while循環(huán)3.2.3for循環(huán)3.2.4嵌套循環(huán)3.2.5循環(huán)中的break語句3.2.6循環(huán)中的continue語句3.2.7示例:求π值3.2.8示例:百錢買百雞問題3.2.9示例:輸出素?cái)?shù)583.2.6循環(huán)中的continue語句循環(huán)結(jié)構(gòu)中如果執(zhí)行到continue語句,會(huì)立即結(jié)束當(dāng)前循環(huán)的本次執(zhí)行,然后,繼續(xù)當(dāng)前循環(huán)的下一次執(zhí)行。具體地,當(dāng)執(zhí)行到continue語句時(shí),循環(huán)體中continue語句之后語句不再執(zhí)行,執(zhí)行流程跳轉(zhuǎn)到:while循環(huán)和do-while循環(huán)會(huì)執(zhí)行循環(huán)繼續(xù)條件判斷,for循環(huán)會(huì)執(zhí)行每次迭代后表達(dá)式,然后,繼續(xù)循環(huán)執(zhí)行流程。示例:程序清單3-13ContinueDemo.java5960課堂思考將下面左邊的for循環(huán)轉(zhuǎn)換成右邊的while循環(huán),其中有什么錯(cuò)誤?改正該錯(cuò)誤。int

i=0,sum=0;while(i<4){if(i%3==0)continue;sum+=i;i++;}int

sum=0;for(int

i=0;i<4;i++){if(i%3==0)continue;sum+=i;}錯(cuò)誤轉(zhuǎn)換inti=0,sum=0;while(i<4){if(i%3==0){ i++; continue; }sum+=i;i++;}內(nèi)容3.1選擇結(jié)構(gòu)3.1.1單分支結(jié)構(gòu)3.1.2雙分支結(jié)構(gòu)3.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else3.1.4多分支結(jié)構(gòu):switch3.1.5switch新特性3.1.6示例:判斷閏年3.1.7示例:判斷生肖屬相3.2循環(huán)結(jié)構(gòu)3.2.1while循環(huán)3.2.2do-while循環(huán)3.2.3for循環(huán)3.2.4嵌套循環(huán)3.2.5循環(huán)中的break語句3.2.6循環(huán)中的continue語句3.2.7示例:求π值3.2.8示例:百錢買百雞問題3.2.9示例:輸出素?cái)?shù)613.2.7示例:求π值π值的計(jì)算可以使用下面的近似值計(jì)算公式:當(dāng)計(jì)算的項(xiàng)數(shù)越多時(shí),π值越精確。本例要求計(jì)算到上述計(jì)算公式的最后一項(xiàng)的絕對值小于等于10?7時(shí),才終止計(jì)算。設(shè)計(jì):上述計(jì)算公式的每一項(xiàng),可以分成分子和分母來看待,分子在1、-1之間變換;假設(shè)項(xiàng)號i從0開始,那么分母的值是(2*i+1)。然后,通過一個(gè)循環(huán),對每一項(xiàng)進(jìn)行累加求和。這個(gè)累加求和,直到最后一項(xiàng)的絕對值小于等于10?7。最后,累加和乘以4就是π的近似值。代碼:程序清單3-14ComputePI.java62內(nèi)容3.1選擇結(jié)構(gòu)3.1.1單分支結(jié)構(gòu)3.1.2雙分支結(jié)構(gòu)3.1.3多分支結(jié)構(gòu):嵌套if和多分支if-else3.1.4多分支結(jié)構(gòu):switch3.1.5switch新特性3.1.6示例:判斷閏年3.1.7示例:判斷生肖屬相3.2循環(huán)結(jié)構(gòu)3.2.1while循環(huán)3.2.2do

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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

提交評論