作業(yè)━━第2章━━流程控制語(yǔ)句_第1頁(yè)
作業(yè)━━第2章━━流程控制語(yǔ)句_第2頁(yè)
作業(yè)━━第2章━━流程控制語(yǔ)句_第3頁(yè)
作業(yè)━━第2章━━流程控制語(yǔ)句_第4頁(yè)
作業(yè)━━第2章━━流程控制語(yǔ)句_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、流程控制語(yǔ)句【學(xué)習(xí)要點(diǎn)】1掌握算法描述的三種基本結(jié)構(gòu)。2掌握if-else條件語(yǔ)句及其應(yīng)用,掌握if語(yǔ)句的嵌套結(jié)構(gòu)。3掌握switch開(kāi)關(guān)語(yǔ)句及其應(yīng)用,掌握break在switch語(yǔ)句中的作用。4掌握while循環(huán)語(yǔ)句及其應(yīng)用。5掌握do-while循環(huán)語(yǔ)句及其應(yīng)用。6掌握f(shuō)or循環(huán)語(yǔ)句及其應(yīng)用。7掌握循環(huán)語(yǔ)句的嵌套結(jié)構(gòu)。8掌握break語(yǔ)句、continue語(yǔ)句在循環(huán)結(jié)構(gòu)中的作用。 9掌握return語(yǔ)句、goto語(yǔ)句、exit()函數(shù)、abort()函數(shù)的作用及其應(yīng)用。-【例題分析】1 若int x=3,執(zhí)行以下循環(huán)語(yǔ)句后,輸出的結(jié)果是_。do cout (x-=2) t ;while (

2、 !(-x) ) ;A1B1 -2C1 -1D死循環(huán)【答案】B【解析】先執(zhí)行一次do后面的循環(huán)體語(yǔ)句,遇到while,判斷下次循環(huán)是否進(jìn)行,即求解while后面表達(dá)式的值,若表達(dá)式的值為true,則再次回到do ;若表達(dá)式的值為 false ,則跳出整個(gè)do-while語(yǔ)句。2若int x=10,執(zhí)行以下switch語(yǔ)句后,x的值是_。switch ( x ) case 9: x+=1;case 10: x+=1;case 11: x+=1;defaule: x+=1; A10B11C12D13【答案】D【解析】從上往下在case分支的常量表達(dá)式值中,尋找與之值相等的分支作為執(zhí)行入口,并從該分

3、支的語(yǔ)句序列開(kāi)始執(zhí)行下去,其后的每個(gè)case分支(包括default分支)中的語(yǔ)句序列都有可能執(zhí)行到,直到遇到break語(yǔ)句才跳出switch語(yǔ)句,或遇到switch語(yǔ)句的結(jié)束括號(hào)“ ”為止。3以下三條語(yǔ)句,正確的論斷是_。(1)if ( a ) s1 ; else s2 ;(2)if ( a=0 ) s2 ; else s1 ;(3)if ( a!=0 ) s1 ; else s2 ;A三者相互等價(jià)B只有(2)和(3)等價(jià)C只有(1)和(3)等價(jià)D三者相互不等價(jià)【答案】A【解析】先求解 if 后面表達(dá)式的值,若表達(dá)式的值為true,則執(zhí)行 if 后面的語(yǔ)句;若表達(dá)式的值為false,則執(zhí)行

4、else 后面的語(yǔ)句。4退出一個(gè)循環(huán)語(yǔ)句(不能終止當(dāng)前函數(shù)的執(zhí)行)的有效措施是_。A用break語(yǔ)句B用continue 語(yǔ)句C用return語(yǔ)句D調(diào)用函數(shù)exit(1)【答案】A【解析】break 是結(jié)束循環(huán);continue 是結(jié)束本次循環(huán);return 是從當(dāng)前執(zhí)行的函數(shù)返回其主調(diào)函數(shù);exit(1) 是終止整個(gè)程序的執(zhí)行。5下面程序的運(yùn)行結(jié)果是_。#includevoid main() int i=0, x=0, y=0 ;do i+ ;if ( i%3 != 0 ) x+=i ; i+ ; y += i+ ; while( i5 ) ;cout x= x ty= y endl ;【答

5、案】輸出:x=5 y=76下面程序的運(yùn)行結(jié)果是_。#includevoid main() int x, y=10 ;while ( x = y-1 ) y -= 2 ;if ( y%3 = 0 ) x+ ; continue ; else if ( y4 ) break ;x+ ; cout x= x ty= y endl ;【答案】輸出:x=3 y=27下面程序的運(yùn)行結(jié)果是_。#includevoid main() int i , j , m ;for ( i=1 ; i=6; i+ ) for ( j=i+1 ; j=8 ; j+ ) if ( j=4 ) cout Bye!” ; bre

6、ak ; m = i * j ;cout i ” j = m t ; cout endl ;【答案】第1行輸出:12 = 2 13 = 3 Bye!第2行輸出:23 = 6 Bye!第3行輸出:Bye!第4行輸出:45 = 20 46 = 24 47 = 28 48 = 32第5行輸出:56 = 30 57 = 35 58 = 40第6行輸出:67 = 42 68 = 48【解析】當(dāng) j 的值為4時(shí),break語(yǔ)句結(jié)束的是內(nèi)層循環(huán),外層for循環(huán)繼續(xù)執(zhí)行。8完善下列程序,程序功能是:輸入一個(gè)自然數(shù),輸出其各因子的連乘形式。(如輸入自然數(shù)12,輸出12 = 1223 )#include void

7、 main() int i=2 , n ;cout n ;cout n = 1 ;do if ( n%i = 0 ) cout “” i ;_; else i+ ; while ( _ ) ;cout endl ;【答案】 n = n / i【答案】 n != 19編寫(xiě)程序:(要求用if-else語(yǔ)句實(shí)現(xiàn))鍵盤(pán)輸入某班同學(xué)的一門(mén)成績(jī),統(tǒng)計(jì)該班級(jí)的不及格、6069、 7079、 8089、 90分以上的各個(gè)檔次的人數(shù),并將該班同學(xué)的原始成績(jī),以及統(tǒng)計(jì)出來(lái)的各個(gè)檔次人數(shù)寫(xiě)入數(shù)據(jù)文件 data1.txt 中,原始成績(jī)按一行4個(gè)數(shù)據(jù)的格式寫(xiě)入 data1.txt 中。(要求程序具有靈活性,參加統(tǒng)計(jì)的學(xué)

8、生人數(shù)應(yīng)隨具體情況而定,不應(yīng)固定,以輸入流結(jié)束符 Ctrl+Z 作為統(tǒng)計(jì)結(jié)束條件。)【答案】編寫(xiě)程序如下 :#include#includevoid main() int x , n=0 , c9=0 , c8=0 , c7=0 , c6=0 , c0=0 ;ofstream outf ( “data1.txt” ) ;cout x ;while ( cin ) outf setw(8) x ;n+ ;if ( n%4=0 ) outf = 90 ) c9+ ;else if ( x = 80 ) c8+ ;else if ( x = 70 ) c7+ ; else if ( x = 60 )

9、 c6+ ;else c0+ ; cin x ; outf “n總?cè)藬?shù)=” n endl ;outf “90分以上人數(shù)=” c9 endl ;outf “8089分之間人數(shù)=” c8 endl ;outf “7079分之間人數(shù)=” c7 endl ;outf “6069分之間人數(shù)=” c6 endl ;outf “不及格人數(shù)=” c0 endl ;outf.close() ;10編寫(xiě)程序:鍵盤(pán)輸入某班同學(xué)的一門(mén)成績(jī),找出最高分和最低分,并統(tǒng)計(jì)出全班的平均成績(jī)。(要求程序具有靈活性,參加統(tǒng)計(jì)的學(xué)生人數(shù)應(yīng)隨具體情況而定,不應(yīng)固定,以輸入負(fù)數(shù)作為統(tǒng)計(jì)結(jié)束條件。)【答案】編寫(xiě)程序如下 :#includ

10、e#includevoid main() float score , max , min , sum = 0 ;int num = 0 ;cout score ;max = min = score ;while ( score = 0 ) num+ ; sum += score ;if ( score max ) max = score ;if ( score score ; if (num) cout 學(xué)生人數(shù)= num endl ;cout 平均成績(jī)= sum/num endl ;cout 最高分= max endl ;cout 最低分= min endl ; else cout 無(wú)輸入數(shù)

11、據(jù),無(wú)法統(tǒng)計(jì)! endl ;11編寫(xiě)程序:輸出下面的圖案?!敬鸢浮烤帉?xiě)程序如下 :# include void main ( ) int i , j , n=7 ;for ( i=1 ; i=n ; i+ ) /輸出前7行圖案 for ( j=1 ; j=7- i ; j+ ) cout ; /內(nèi)循環(huán)for ( j=1 ; j=2*i-1 ; j+ ) cout ; /內(nèi)循環(huán)cout endl ; for ( i=1 ; i=n-1 ; i+ ) /輸出后6行圖案 for ( j=1 ; j=i ; j+ ) cout ; /內(nèi)循環(huán)for ( j=1 ; j=13-2*i ; j+ ) cou

12、t ; /內(nèi)循環(huán)cout endl ; -【思考題】選擇題1若int x=3,執(zhí)行以下循環(huán)語(yǔ)句后,輸出的結(jié)果是_。while ( !(-x) ) cout (x-=2) t ;A0B0 -3C循環(huán)體一次都沒(méi)做D死循環(huán)【答案】?2若int x=10,執(zhí)行以下switch語(yǔ)句后,x的值是_。switch ( x ) case 10: x+=1;case 9: x+=1;case 11: x+=1;defaule: x+=1; A11B12C13D14【答案】?-填空題1若int i=1;while(i+5);則執(zhí)行語(yǔ)句后i的值_。【答案】?2break語(yǔ)句只能用在_、_兩種語(yǔ)句中?!敬鸢浮??【答案

13、】?3程序的三種基本的控制結(jié)構(gòu)是_、_、_?!敬鸢浮浚俊敬鸢浮??【答案】?4continue語(yǔ)句只能用在_語(yǔ)句中?!敬鸢浮??5exit()函數(shù)的作用是_?!敬鸢浮??6abort()函數(shù)的作用是_?!敬鸢浮??7return語(yǔ)句的作用是_。【答案】?8若int i=1;for ( ; ;i+);則循環(huán)的執(zhí)行次數(shù)是_?!敬鸢浮浚?完善程序題1求 150 200 之間所有能被 7 整除的數(shù),要求每行輸出四個(gè)數(shù)。# include # include void main ( ) int n , k=1 ;cout “150 200 之間被7整除的數(shù):n” ;for ( n=150 ; n=200 ; n

14、+ )if ( _ ) cout setw (12) n ; if ( _ ) cout endl ;k+ ; cout endl ;【答案】?【答案】?【答案】?2將整數(shù)反轉(zhuǎn)輸出。# include void main ( ) int n ; cout n;while ( n != 0 ) cout _;n = _; cout endl ;【答案】?【答案】?-寫(xiě)出下列程序的輸出結(jié)果1下面程序的運(yùn)行結(jié)果是_。#includevoid main() int i=0, x=0, y=0 ;while ( i5 ) i+ ;if ( i%3=0 ) x+=i ; i+ ; y += i+ ; co

15、ut x= x ty= y endl ;【答案】輸出:?2下面程序的運(yùn)行結(jié)果是_。#includevoid main() int x, y=10 ;while ( x = y-1 ) y -= 2 ;if ( y%3 != 0 ) x+ ; break ; else if ( y4 ) continue ;x+ ; cout x= x ty= y endl ;【答案】輸出:?3下面程序的運(yùn)行結(jié)果是_。#includevoid main() int i , j , m ;for ( i=1 ; i=5; i+ ) for ( j=i+1 ; j=6 ; j+ ) if ( j=4 ) continue ; m = i * j ;cout i ” j = m t ; cout endl ;【答案】第1行輸出:?第2行輸出:?第3行輸出:?第4行輸出:?第5行輸出:?-編程題1編寫(xiě)程序:(要求用switch語(yǔ)句實(shí)現(xiàn))鍵盤(pán)輸入某班同學(xué)的一門(mén)成績(jī),統(tǒng)計(jì)該班級(jí)的不及格、6069、 7079、 8089、 90分以上的各個(gè)檔次的人數(shù),并將該班同學(xué)的原始成績(jī),以及統(tǒng)計(jì)出來(lái)的各個(gè)檔次人數(shù)寫(xiě)入數(shù)據(jù)文件 dat

溫馨提示

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

評(píng)論

0/150

提交評(píng)論