循環(huán)結構的程序設計補充習題_第1頁
循環(huán)結構的程序設計補充習題_第2頁
循環(huán)結構的程序設計補充習題_第3頁
循環(huán)結構的程序設計補充習題_第4頁
循環(huán)結構的程序設計補充習題_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、v1.0 可編輯可修改第五章、單選題循環(huán)結構的程序設計補充習題 (1)1. 以下敘述正確的是A) do-while語句構成的循環(huán)不能用其它語句構成的循環(huán)來代替。B) do-while語句構成的循環(huán)只能用 break 語句退出。C)用 do-while語句構成的循環(huán),在 while 后的表達式為非零時結束循環(huán)。D) 用 do-while 語句構成的循環(huán) , 在 while 后的表達式為零時結束循環(huán)。2. 設有程序段int k=10;while(k=0) k=k-1;則下面描述中正確的是 。A) while 循環(huán)執(zhí)行 10 次B) 循環(huán)是無限循環(huán)C) 循環(huán)體語句一次也不執(zhí)行D)循環(huán)體語句執(zhí)行一次3

2、. 有如下程序main() int x=23;do printf(%d,x-); while(!x); 該程序的執(zhí)行結果是A) 321 B) 23 C) 不輸出任何內容 D) 陷入死循環(huán)4. 有如下程序main() int n=9;while(n6) n-;printf( “ %d” ,n);該程序段的輸出結果是A) 987 B) 876 C) 8765 D) 98765. 有以下程序main()v1.0 可編輯可修改 int s=0,a=1,n;scanf(%d,&n);do s+=1; a=a-2; while(a!=n);printf(%dn,s); 若要使程序的輸出值為 2,則應該從鍵

3、盤給 n 輸入的值是A) -1 B)-3 C)-5 D)06. 若有如下程序段,其中 s、a、 b、c均已定義為整型變量 ,且 a、c 均已賦值 (c 大于 0) s=a;for(b=1;b=c;b+) s=s+1; 則與上述程序段功能等價的賦值語句是A) s=a+b; B)s=a+c; C)s=s+c; D)s=b+c;7. 標有 /*/ 的語句的執(zhí)行次數(shù)是:int y , i ;for(i=0;i1;n-) s=s+1/n;printf(%n,s);程序運行后輸出結果錯誤,導致錯誤結果的程序行是A)s=; B)for(n=10;n1;n-)C)s=s+1/n; D)printf(%n,s)

4、v1.0 可編輯可修改9. C 語言中 while 和 do-while 循環(huán)的主要區(qū)別是 。A)do-while 的循環(huán)體至少無條件執(zhí)行一次B) while 的循環(huán)控制條件比 do-while 的循環(huán)控制條件嚴格C) do-while 允許從外部轉到循環(huán)體內D) do-while 的循環(huán)體不能是復合語句10. 以下能正確計算 1*2*3* *10 的程序段是 。A)do i=1;s=1;s=s*i;i+;while(i=10);B) do i=1,s=0;s=s*i;i+;while(i=10);C) i=1;s=1;dos=s*i;i+;while(i=10);D) i=1;s=0;dos

5、=s*i;i+;while(i=10);11. 以下正確的描述是 ( )A) 循環(huán)體中的 continue 語句的作用是結束整個循環(huán)的執(zhí)行B) switch 語句中不能出現(xiàn) break 語句C) continue 語句只能中止本次循環(huán)D) break 語句不能用于多重循環(huán)12. 語句 while(!E); 中的表達式 !E 等價于 .A)E=0 B)E!=1 C)E!=0 D)E=113. 設有程序段t=0;while(printf( “* ”) t+;if(t3) break;則下面描述正確的是 。A)其中循環(huán)控制表達式與 0 等價B) 其中循環(huán)控制表達式與 0等價C) 其中循環(huán)控制表達式是

6、不合法的D) 以上說法都不對14. 下面有關 for 循環(huán)的正確描述是 。A) for 循環(huán)只能用于循環(huán)次數(shù)已經確定的情況B) for 循環(huán)是先執(zhí)行循環(huán)體語句,后判斷表達式v1.0 可編輯可修改C) 在 for 循環(huán)中,不能用 break 語句跳出循環(huán)體D) for 循環(huán)的循環(huán)體語句中,可以包含多條語句,但必須用花括號括起來15. 對 for( 表達式 1; 表達式 3) 可理解為 。A)for( 表達式 1;0; 表達式 3) B)for( 表達式 1;1; 表達式 3)C)for( 表達式 1; 表達式 1; 表達式 3)D) for( 表達式 1; 表達式 3; 表達式 3)16. 下面

7、程序段 ( ) 。for(t=1;t=100;t+)scanf( “ %d,&x); if(x0)continue;printf( “%3d”, x);A) 當 x=0 時什么也不輸出C) printf 函數(shù)永遠也不執(zhí)行D) 最多允許輸出 100 個非負整數(shù)二、填空題1. continue 語句是用來結束 循環(huán)的。2. 下列程序段循環(huán)執(zhí)行的次數(shù)是 次。int x=0;while(x=1) x-;if(x=0)break;3. 循環(huán)程序段“ k=5; for(; k0; k-);”執(zhí)行后, k 的值為 。4. 執(zhí)行循環(huán)結構中的 語句能夠立即退出該結構。 5執(zhí)行循環(huán)結構中的語句能夠立即執(zhí)行下一次循

8、環(huán)。6. 設 i,j,k 均為 int 型變量 , 則執(zhí)行完下面的 for 循環(huán)后 ,k 的值為 。 for(i=0,j=10;i=j;i+,j-) k=i+j;三、判斷題v1.0 可編輯可修改1若有說明 int c ;則 while(c=getchar() ;是正確的 C 語句。 ( )2 do-while 語句構成的循環(huán)不能用 break 語句退出。 ( )3 for 循環(huán)只能用于循環(huán)次數(shù)已經確定的情況。( )4for( ; ; )S中的語句 S必執(zhí)行無窮多次。 ( )5若 S為 C語句, while(1) S 必定是無限循環(huán)。 ( )四、寫出下列程序的運行結果1下面程序的運行結果是。#i

9、nclude main() int num=0;while(num=2)num+;printf( “ %d n” ,num);2. 以下程序的輸出是 。#include main() int i;for(i=1;i=5;i+)if(i%2) printf(“* ”);else continue;printf( “#”);printf( “$ n” );3.當運行以下程序時,從鍵盤鍵入 right( 代表回車 ) ,則下面程序的運行結果v1.0 可編輯可修改#include main() char c;while(c=getchar()!= ) putchar(+c);4下列程序的輸出結果是。m

10、ain ( ) int a=0, n=5;for ( ; ; ) a+; n-;printf(%d,a);a=n;if (n=0) break;printf(%d,a);五、程序填空題1. 下面程序段是從鍵盤輸入的字符中統(tǒng)計數(shù)字字符的個數(shù),用換行符結束 循環(huán)。請?zhí)羁?。int n=0;char c;c=getchar();while()if()n+;c=getchar();2 下面程序的功能是將從鍵盤輸入的一對數(shù),由小到大排序輸出。當輸入一對相等數(shù)時結束 循環(huán),請選擇填空。#include main()int a,b,t;v1.0 可編輯可修改scanf( “ %d %d”,&a,&b);whi

11、le( )if(ab) t=a; a=b; b=t; printf( “ %d,%d” n” ,a,b);scanf( “ %d %d” ,&a,&b);3. 已知能被 4 整除而不能被 100整除的或者能被 400整除的年份是閏年, 程序如下:main()int year,leap;scanf( “ %d ” ,&year);if ( )leap=1;else leap=0;if ( )printf( “是閏年” );else printf( “ 不是閏年” );4. 下面程序的功能是將從鍵盤輸入的一組字符中統(tǒng)計出大寫字母的個數(shù)數(shù) n,并輸出 m、 n 中的較大者,請選擇填空。#include main()int m=0,n=0;char c;while( )!= n ) if(c=A&c=a&c=z) n+;v1.0 可編輯可修改printf( “ %d n” ,mn);5. 下面程序的功能是將小寫字母變成對應大寫字母后的第二個字母。 (如 a 變成 B。)其中 y 變成 A, z 變成 B。請選擇填空。#include main() char c;while(c=getchar()!=n)if(c=a&cZ)printf( “ %c” ,c);6下面程序的功能是在輸入的一批正整數(shù)中求出最大者,輸入0 結束循環(huán),請選擇填空。#include main()int a,max

溫馨提示

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

評論

0/150

提交評論