C語言題庫循環結構_第1頁
C語言題庫循環結構_第2頁
C語言題庫循環結構_第3頁
C語言題庫循環結構_第4頁
C語言題庫循環結構_第5頁
已閱讀5頁,還剩21頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、一、 選擇題1.以下敘述正確的是A: do-while 語句構成的循環不能用其它語句構成的循環來代替。B: do-while 語句構成的循環只能用break 語句退出。C: 用do-while 語句構成的循環,在while 后的表達式為非零時結束循環。D: 用do-while 語句構成的循環,在while 后的表達式為零時結束循環。2.下面有關for 循環的正確描述是A: for 循環只能用于循環次數已經確定的情況B: for 循環是先執行循環體語句,后判定表達式C: 在for 循環中,不能用break 語句跳出循環體D: for 循環體語句中,可以包含多條語句,但要用花括號括起來3.C 語言

2、中while 和dowhile 循環的主要區別是A: dowhile 的循環體至少無條件執行一次B: while 的循環控制條件比dowhile 的循環控制條件嚴格C: dowhile 允許從外部轉到循環體內;D: dowhile 的循環體不能是復合語句;4.下列關于switch 語句和break 語句的結論中,正確的是A: break 語句是switch 語句中的一部分B: 在switch 語句中可以根據需要使用或不使用break 語句C: 在switch 語句中必須使用break 語句D: switch 語句是break 語句的一部分5.以下正確的描述是A: continue 語句的作用是

3、結束整個循環的執行;B: 只能在循環體內和switch 語句體內使用break 語句;C: 在循環體內使用break 語句或continue 語句的作用相同;D: 從多層循環嵌套中退出時,只能使用goto 語句;6.語句while(!e);中的條件!e 等價于A: e0B: e!0C: e!1D: e7.在以下給出的表達式中,與while(E)中的E不等價的表達式是 A: !E=0B: E0|E=+y;x+)B: for(;x+)C: while(1)x+;D: for(i=10;i-)11.以下不構成無限循環的語句或者與語句組是 A: n=0;do+n;whilen6) n-;printf(

4、“%d”,n);該程序段的輸出結果是A: 987B: 876C: 8765D: 987615.以下程序的輸出結果是( )。main( ) int n=4;while(n-)printf(%d ,-n);A: 2 0B: 3 1C: 3 2 1D: 2 1 016.以下程序的輸出結果是( )。main() int num= 0;while(num7) n-;printf(%dn,n);A: 10987B: 9876C: 1098D: 98718.以下程序的輸出結果是( )main() int num0;while(num2) num+;printf(“%d,”,num);A: 1,B: 1,2,

5、C: 1,2,3,D: 1,2,3,4,19.請讀程序:#includemain() int mun=0;while(num=2) num+; printf(%dn,num);上面程序的輸出結果是A: 12B: 123C: 1234D: 120.下面程序片段,退出while 循環時,s 的值是_。int i=0,s=1;while(i3) s+=(+i);A: 7B: 6C: 5D: 421.下面程序片段,退出while 循環時,s 的值是_。int i=0,s=1;while(i3) s+=(i+);A: 6B: 5C: 4D: 322.以下程序的輸出結果是( )main() int x0,

6、y0;while(x15) y+,x+y;printf(“%d,%d”,y,x);A: 20,7B: 6,12C: 20,8D: 8,2023.以下程序的輸出結果是( )main() int n0;while(n+7) n;printf(“%d,”,n); A: 10,9,8,B: 9,8,7,C: 10,9,8,7,D: 9,8,7,6,25.在執行以下程序時,如果從鍵盤上輸入,ABCdef,則輸出為#includemain() char ch;while(ch=getchar()!=n) if(ch=A & ch=a & ch=z) ch=ch-32;printf(%c,ch);print

7、f(n);A: ABCdefB: abcDEFC: abcD: DEF26.有以下程序:#includemain()inty=10;while(y-);printf(y=dn,y);程序執行后的輸出結果是()。Ay=0By=-1Cy=lDwhile構成無限循環27.以下程序的輸出結果是( )main() int a1,b2,c2,t;while(abc) ta;ab;bt;c;printf(“%d,%d,%d”,a,b,c);A: 1,2,0B: 2,1,0C: 1,2,1D: 2,1,128.有以下程序段#includemain()while(getchar()!=n);以下敘述中正確的是(

8、)。A此while語句將無限循環Bgetchar()不可以出現在while語句的條件表達式中C當執行此while語句時,只有按回車鍵程序才能繼續執行D當執行此while語句時,按任意鍵程序就能繼續執行29.有以下程序:#includemain()inta=1,b=2;while(aO)switch(s)casel:printf(d,s+5); case2:printf(d,s+4);break; case3:printf(d,s+3); default:(d,s+1);break;scanf(d,&s);運行時,若輸入123450,由輸出結果是()。A6566456B66656C66666D6

9、66665631.下面的程序main() int x=3;do printf(%dn,x-=2);while(!(-x);A: 輸出的是1B: 輸出的是1 和-2C: 輸出的是3 和0D: 是死循環32.以下程序段是( )x1;do xx*x; while(!x);A: 死循環B: 循環執行兩次C: 循環執行一次D: 有語法錯誤33.有以下程序段int x=3do printf(“%d”,x-=2); while (!(-x);其輸出結果是A: 1B: 3 0C: 1 -2D: 死循環34.有以下程序段int n,t=1,s=0;scanf(%d,&n);do s=s+t; t=t-2; wh

10、ile (t!=n);為使此程序段不陷入死循環,從鍵盤輸入的數據應該是( )。A: 任意正奇數B: 任意負偶數C: 任意正偶數D: 任意負奇數35.下面的程序main() int x=3;do printf(%dn,x-=2);while(!(-x);A: 輸出的是1B: 輸出的是1 和-2C: 輸出的是3 和0D: 是死循環36.有如下程序main( ) int x=23;do printf(“%d”,x-);while(!x);該程序的執行結果是A: 321B: 23C: 不輸出任何內容D: 陷入死循環37.有以下程序main() int s=0,a=1,n;scanf(%d,&n);do

11、 s+=1; a=a-2; while(a!=n);printf(%dn,s);若要使程序的輸出值為2,則應該從鍵盤給n 輸入的值是A: -1B: -3C: -5D: 038假定a 和b 為int 型變量,則執行以下語句后b 的值為a=1; b=10;do b-=a; a+; while (b-0) ;A: 9B: -2C: -1D: 839.執行以下程序后,輸出的結果是 。main() int y=10 ;do y- ; while (-y);printf(“%dn”,y- );A: 1B: 1C: 8D: 040.以下程序的輸出結果是( )main() int a1,b10;doba; a

12、+; while(b0);printf(“a%d,b%d”,a,b);A: a3,b11B: a2,b8C: a1,b1D: a4,b941.若i和k都是int類型變量,有以下for語句:for(i=0,k=-1;k=1;k+)printf(*n);下面關于語句執行情況的敘述中正確的是()。A循環體執行兩次B循環體執行一次C循環體一次也不執行D構成無限循環42.以下程序執行后sum 的值是( )。min() int i , sum;for(i=1;i6;i+) sum+=i;printf(“%dn”,sum);A: 15B: 14C: 不確定D: 043.在C 語言中,執行語句:for (j=

13、1; j5; j+);后,變量j 的值是( )。A: 3B: 4C: 5D: 644.已知 int i,j;執行語句 for(i=1,j=10;ij;i+,j-=2) ;i,j 的值是_。A: 3,6B: 4,4C: 5,2D: 其它三個答案都不對45.以下循環體的執行次數是( )。main() int i,j;for(i=0,j=1; i=j+1; i+=2, j-)printf(%d n,i);A: 3B: 2C: 1D: 046.若i,j已定義為int類型,則一下程序段中內循環體的總的執行次數是for(i=5;i;i-)for(j=0;j4;j+)A: 20B: 25C: 24D: 30

14、47.有以下程序main( ) int i,s=0;for(i=1;i10;i+=2) s+=i+1;printf(“%dn”,s);程序執行后的輸出結果是( )。A: 自然數19 的累加和B: 自然數110 的累加和C: 自然數19 中的奇數之和D: 自然數110 中的偶數之和48.若x 是int 型變量,且有下面的程序片段:for(x=3; x8;y=+i)printf(%d,%d ,x-,y);A: 10 1 9 2B: 9 8 7 6C: 10 9 9 0D: 10 10 9 150.有如下程序main( ) int i,sum;for(i=1;i=3;sum+) sum+=i;pri

15、ntf(“%dn”,sum);該程序的執行結果是A: 6B: 3C: 死循環D: 051.以下程序的輸出結果是( )main() int i;for(i1;i5;i+) if(i%2) printf(“*”);else continue;printf(“#”);printf(“$”);A: *#*#*#$B: *#*#$C: #*#*#*$D: #*#*$52.有以下程序#includemain()int y=9;for( ;y0;y-)if(y%3=0) printf(“%d”,-y);程序的運行結果是A: 852B: 875421C: 741D: 96353.以下程序段中的變量已正確定義f

16、or(i=0;i4;i+,i+)for(k=1;k3;k+);printf(“*”);該程序段的輸出結果是()A: *B: *C: *D: *54.若有如下程序段,其中s、a、b、c 均已定義為整型變量,且a、c 均已賦值(c 大于0) s=a;for(b=1;b3;j-) if(j%3)j-;-j; -j;printf(%d ,j);A: 6 3B: 7 4C: 6 2D: 7 356.下述程序的輸出結果是()。#includemain()inti;for(i=1;i=20)&(i*i=lOO)break;printf(dn,i*i);A49B36C25D6457.下列程序的輸出結果是()。

17、#includemain()inta=0,i;for(i=1;i5;i+)switch(i)case0: case3:a+=1; casel: case2:a+=2; default:a+=3;printf(d,i);A19B1C6D858.有下列程序:main()inti,j,x=0; for(i=0,i2;i+)x+;for(j=0;j=3;j+)if(j2)continue;x+:x+:printf(x=dnx);程序執行后的輸出結果是()。Ax=4Bx=8Cx=6Dx=1259.有以下程序:#includemain()chara,b,C;b=l;c=A;for(a=0;a1;n-)s=

18、s+1/n;printf(“%6.4fn”,s);程序運行后輸出結果錯誤,導致錯誤結果的程序行是()A:s=1.0B: for(n=100;n1;n-)C: s=s+1/n;D: printf(“%6.4fn”,s);二、 填空題1、 在C語言中,實現循環的語句主要有 、 、 2、在C語言程序中,當do-while語句構成的循環中的條件為_時,結束循環。3.下面程序的功能是計算1 至50 中是7 的倍數的數值之和,請進行填空。main()int i,sum0;for(i1;i50;i+)if(_) sum+i;printf(“%d”,sum);4.以下程序的功能是計算:s=1+12+123+1

19、234+12345。請填空。 main() int t=0,s=0,i; for( i=1; i=5; i+) t=i+ ; s=s+t; printf(s=%dn,s); 5.以下程序運行后的輸出結果是 main()char c1,c2;for(c1=0,c2=9;c1=0;i-) t*=i; printf(“%dn”,t); 執行后輸出結果是 7.以下程序的輸出結果是 main() int s,i; for(s=0,i=1;i2); printf(“%dn”,j);9.設有以下程序:main() int n1,n2; scanf(“%d”,&n2); while(n2!=0) n1=n2%

20、10; n2=n2/10; printf(“%d”,n1);程序運行后,如果從鍵盤上輸入1298;則輸出結果為 10.下面程序的功能是:計算1 到10 之間奇數之和及偶數之和,請填空。#include main() int a, b, c, i;a=c=0for=(i=0;i10;i+=2) a+=i; c+=b;printf(偶數之和=%dn,a);printf(奇數之和=%dn,c-11);11.設i,j,k 均為int 型變量,則執行完下面的for 循環后,k 的值為 for(i=0,j=10;i=j;i+,j-) k=i+j;12.要使以下程序段輸出10 個整數,請填入一個整數。for(i=0;imax) max=x;if( 2 ) min=x;scanf(“%f”,&x);printf(“max=%f,min=%f”,max,min);14.從鍵盤上輸入10個數,求其平均值。main()int I;float f,sum;for(i=1,sum=0.0;i11;i+) 1 2 printf(“avetage=%fn”,sum/10);1

溫馨提示

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

評論

0/150

提交評論