第4章--循環(huán)結(jié)構(gòu) - 參考答案_第1頁
第4章--循環(huán)結(jié)構(gòu) - 參考答案_第2頁
第4章--循環(huán)結(jié)構(gòu) - 參考答案_第3頁
第4章--循環(huán)結(jié)構(gòu) - 參考答案_第4頁
第4章--循環(huán)結(jié)構(gòu) - 參考答案_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1、若i,j已定義為int類型,則以下程序段中內(nèi)循環(huán)體的總的執(zhí)行次數(shù)是 for (i=5;i;i-) for (j=0;j<4;j+).A) 20 B) 25C) 24 D) 30A2、設(shè)i,j,k均為int型變量,則執(zhí)行完下面的for循環(huán)后,k的值為 for(i=0,j=10;i<=j;i+,j-) k=i+j;A) 12 B) 10C) 11 D) 9B3、當執(zhí)行以下程序段時 x=-1; do x=x*x; while( !x);A) 循環(huán)體將執(zhí)行一次B) 循環(huán)體將執(zhí)行兩次C) 循環(huán)體將執(zhí)行無限次D) 系統(tǒng)將提示有語法錯誤A4、若輸入字符串:abcde<回車>,則以

2、下while循環(huán)體將執(zhí)行多少次。 while( (ch=getchar()!='e' ) printf("*");A) 5 B) 4C) 6 D) 1B5、有以下程序段 int k=0; while (k=1) k+; while循環(huán)執(zhí)行的次數(shù)是A) 無限次 B) 有語法錯,不能執(zhí)行C) 一次也不執(zhí)行 D) 執(zhí)行一次A 6、語句while(!e);中的條件 !e 等價于( )。A) e=0 B) e!=1C) e!=0 D) eA7、以下for循環(huán)是( )。for(x=0,y=0;(y!=123) && (x<4);x+) A) 無限循

3、環(huán) B) 循環(huán)次數(shù)不定C) 執(zhí)行4次 D) 執(zhí)行3次C8、C語言中while 和do-while 循環(huán)的主要區(qū)別是( )。A) do-while的循環(huán)體至少無條件執(zhí)行一次B) while 的循環(huán)控制條件比do-while 的循環(huán)控制條件嚴格C) do-while 允許從外部轉(zhuǎn)到循環(huán)體內(nèi)D) do-while 的循環(huán)體不能是復合語句A9、以下敘述正確的是( )。A) continue語句的作用是結(jié)束整個循環(huán)的執(zhí)行B) 只能在循環(huán)體內(nèi)和switch語句體內(nèi)使用break語句C) 在循環(huán)體內(nèi)使用break語句或continue語句的作用相同D) 從多層循環(huán)嵌套中退出時,只能使用goto語句B10、對

4、下面程序段,描述正確的是( )。 for(t=1;t<=100;t+) scanf("%d",&x); if (x<0) continue; printf("%dn",t); A) 當x<0時,整個循環(huán)結(jié)束B) 當x>=0時,什么也不輸出C) printf函數(shù)永遠也不執(zhí)行D) 最多允許輸出100個非負整數(shù)D11、在下列選項中,沒有構(gòu)成死循環(huán)的程序段是A) int i=100; while (1) i=i%100+1; if (i>100) break; B) for( ; ; );C) int k=1000; do

5、+k; while (k>=1000) ;D) int s=36; while (s) -s;D 12、以下程序的輸出結(jié)果是 main( ) int a,b; for(a=1,b=1;a<=100;a+) if (b>=10) break; if (b%5=1) b+=5; continue; printf("%dn",a); A) 101 B) 6C) 4 D) 3D 13、以下程序的輸出結(jié)果是( )。 #include <stdio.h> main() int i; for(i=1;i<=5;i+) if(i%2) printf(&q

6、uot;*"); else continue; printf("#"); printf("$n"); A) *#$ B) #*#*#*$C) *#*#*#$ D) *#*$A 14、以下程序段的輸出結(jié)果是( )。 int k,j,s; for(k=2;k<6;k+,k+) s=1; for(j=k;j<6;j+) s+=j; printf("%dn",s);A) 1 B) 9C) 11 D) 10D 15、以下程序段的輸出結(jié)果是( )。 int k,n,m; n=10;m=1;k=1; while (k<=

7、n) m*=2;k+=4; printf("%dn",m);A) 4 B) 16C) 8 D) 32C 16、設(shè)有如下程序段: int i=0, sum=1; do sum+=i+; while(i<6); printf("%dn", sum);上述程序段的輸出結(jié)果是( )。A) 11 B) 16C) 22 D) 15B 17、以下程序的輸出結(jié)果是( )。 #include <stdio.h> main( ) int count,i=0; for(count=1; count<=4; count+) i+=2; printf(&q

8、uot;%d",i); A) 20 B) 246C) 2468 D) 2222C18、下面程序的輸出結(jié)果是( )。 main( ) unsigned int num,k; num=26;k=1; do k*=num%10; num/=10; while(num); printf("%dn", k); A) 2 B) 12C) 60 D) 18B19、閱讀以下程序: main( ) int x; for(x=5;x>0;x-) if (x-<5) printf("%d,",x); else printf("%d,"

9、,x+); 程序運行后的輸出結(jié)果是( )。A) 4,3,1 B) 4,3,1,C) 5,4,2 D) 5,3,1,B20、下面程序是計算n個數(shù)的平均值,請?zhí)羁铡?main( ) int i,n; float x,avg=0.0; scanf("%d",&n); for(i=0;i<n;i+) scanf("%f",&x); avg=avg+_; avg=_; printf("avg=%fn",avg); A) i B) x avg/i avg/nC) x D) i avg/x avg/nB 21、在執(zhí)行以下程序時

10、,如果從鍵盤上輸入:ABCdef<回車>,則輸出為 #include <stdio.h> main( ) char ch; while (ch=getchar( )!='n') if (ch>='A' && ch<='Z') ch=ch+32; else if (ch>='a' && ch<'z') ch=ch-32; printf("%c",ch); printf("n"); A) ABCdef

11、 B) abcDEFC) abc D) DEFB 22、運行以下程序后,如果從鍵盤上輸入:65 14<回車>,則輸出結(jié)果為 main( ) int m,n; printf("Enter m,n:"); scanf("%d%d",&m,&n); while (m!=n) while (m>n) m-=n; while (n>m) n-=m; printf("m=%dn",m); A) m=3 B) m=2C) m=1 D) m=0C23、下面程序的輸出結(jié)果是( )。 main( ) int x=1

12、0,y=10,i; for(i=0;x>8;y=+i) printf("%d %d ",x-,y); A) 10 1 9 2 B) 9 8 7 6C) 10 9 9 0 D) 10 10 9 1D 24、有如下程序 main( ) int n=9; while(n>6) n-;printf("%d",n); 該程序段的輸出結(jié)果是A) 987 B) 876C) 8765 D) 9876B25、函數(shù)pi的功能是根據(jù)以下近似公式求值: (*)/6=1+1/(2*2)+1/(3*3)+.+1/(n*n)請?zhí)羁?,完成求的功能?#include <

13、;math.h> main( ) double s=0.0; long int i,n; scanf("%ld",&n); for(i=1;i<=n;i+) s=s+_ ; s=(sqrt(6*s); printf("s=%e",s); A) 1/i*i B) 1.0/i*iC) 1.0/(i*i) D) 1.0/(n*n)C 26、設(shè)有以下程序 main( ) int n1,n2; scanf("%d",&n2); while (n2!=0) n1=n2%10; n2=n2/10; printf(&quo

14、t;%d",n1); 程序運行后,如果從鍵盤上輸入1298,則輸出結(jié)果為( )。A) 892 B) 8921C) 89 D) 921B27、以下函數(shù)的功能是:求x的y次方,請?zhí)羁铡?main( ) int i,x,y; double z; scanf("%d %d",&x,&y); for(i=1,z=x;i<y;i+) z=z*_ ; printf("xy=%en",z); A) i+ B) x+C) x D) iC28、下面程序的運行結(jié)果是( )。 main( ) int a,b; a=-1; b=0; do +a;

15、+a; b+=a; while(a<9); printf("%dn",b); A) 34 B) 24C) 26 D) 25D29、執(zhí)行下面程序段后,k的值是( )。 int i,j,k; for(i=0,j=10;i<j;i+,j-) k=i+j;A) 9 B) 11C) 8 D) 10D30、下面程序的運行結(jié)果是( )。 main( ) int m=7,n=5,i=1; do if (i%n=0) printf("%dn",i); break; i+; while(i!=0); A) 7 B) 6C) 5 D) 4C 31、下面程序的運行結(jié)

16、果是( )。 main( ) int s=0,i=1; while (s<=10) s=s+i*i; i+; printf("%d",-i); A) 4 B) 3C) 5 D) 6B32、以下程序的輸出結(jié)果是( )。 #include <stdio.h> main( ) int num=0; while (num<=2) num+; printf( "%dn",num); A) 1 B) 1 C) 1 D) 1 2 2 2 3 3 4C 33、以下程序運行后的輸出結(jié)果是( )。 #include <stdio.h> m

17、ain( ) int s=0,k; for(k=7;k>=0;k-) switch(k) case 1: case 4: case 7: s+; break; case 2: case 3: case 6: break; case 0: case 5: s+=2; break; printf("s=%dn",s); A)s=5 B)s=1C)s=3 D)s=7D34、以下程序運行后的輸出結(jié)果是( )。 #include <stdio.h> main( ) int i,j; for(i=4;i>=1;i-) printf("*");

18、 for(j=1;j<=4-i;j+) printf("*"); printf("n"); A)* B)* C)* D)* * * * * * * * * *A35、有以下程序 #include <stdio.h> main() int c; while (c=getchar()!='n') switch(c-'2') case 0: case 1: putchar(c+4); case 2: putchar(c+4);break; case 3: putchar(c+3); default: putch

19、ar(c+2);break; printf("n"); 從第一列開始輸入以下數(shù)據(jù),<CR>代表一個回車符。 2473<CR> 程序的輸出結(jié)果是( )。A) 668977 B) 668966C) 66778777 D) 6688766A36、當從鍵盤上輸入字符“12134211”下面程序的輸出結(jié)果是( )。 main( ) char s; int v1=0,v2=0,v3=0,v4=0,k; for(k=0;k<=7;k+) scanf("%c",&s); switch(s) default: v4+; case &#

20、39;1': v1+; case '3': v3+; case '2': v2+; printf("v1=%d,v2=%d,v3=%d,v4=%dn",v1,v2,v3,v4); A) v1=4,v2=2,v3=1,v4=1 B) v1=4,v2=9,v3=3,v4=1C) v1=5,v2=8,v3=6,v4=1 D) v1=8,v2=8,v3=8,v4=8C37、運行以下程序后,如果從鍵盤上輸入china#<回車>,則輸出結(jié)果為 #include <stdio.h> main( ) int v1=0,v2=0

21、; char ch; while (ch=getchar( )!='#') switch(ch) case 'a': case 'h': default: v1+; case 'o': v2+; printf("%d,%dn",v1,v2); A) 2,0 B) 5,0C) 5,5 D) 2,5C38、下列程序的輸出結(jié)果是( )。 main( ) int i, j, m=0, n=0; for(i=0; i<2; i+) for(j=0; j<2; j+) if (j>=i) m=1; n+;

22、 printf("%d n",n); A) 4 B) 2C) 1 D) 0C39、下面程序的功能是:計算1到10之間奇數(shù)之和及偶數(shù)之和,請?zhí)羁铡?#include <stdio.h> main( ) int a,b,c,i; a=c=0; for(i=0;i<=10;i+=2) a+=i; _; c+=b; printf("偶數(shù)之和=%dn",a); printf("奇數(shù)之和=%dn",c-11); A) i+=2 B) i+C) b=b+1 D) b=i+1D40、下面程序的功能是:輸出100以內(nèi)能被3整除且個位數(shù)

23、為6的所有整數(shù),請?zhí)羁铡?#include <stdio.h> main( ) int i,j; for(i=0;_; i+) j=i*10+6; if (_) continue; printf("%d",j); A) i<=10 B) i<10 j%3!=0 j/3C) i<10 D) i<=9 j%3!=0 i%3C41、要輸出下面的圖形,請完善程序。 1 2 2 3 3 3 4 4 4 4 5 5 5 5 5 6 6 6 6 6 6 #include <stdio.h> main( ) int i,j,k; for(i=

24、1;i<=6;i+) for(j=1;j<=20-2*i;j+) printf(" "); for(k=1;_;k+) printf("%2d",i); _ A)i<=k B)k<j printf(" "); printf("n");C)k<=i D)k<=i printf("n"); printf(" ");C42、要輸出下面的圖形,請完善程序。 1 1 2 1 1 2 3 2 1 1 2 3 4 3 2 1 1 2 3 4 5 4 3

25、2 1 #include <stdio.h> main( ) int i,j,k; for(i=1;i<=5;i+) for(j=1;j<=20-3*i;j+) printf(" "); for(k=1;_;k+) printf("%3d",k); for(_;k>0;k-) printf("%3d",k); printf("n"); A) k<=i B)k<i k=i k=i-1C) k<i D)k<=i k=i-1 k=i-1D 43、運行以下程序后,如果從鍵盤上輸入4 6 8 12 -9 58 2 -1<回車>,則輸出結(jié)果為( )。 main( ) int x,i,m; do scanf("%d",&x); while (x<0 && x!=-1); m=x; while (x!=-1) scanf("%d",&x); if (x>0 && x>m) m=x; if (m!=-1

溫馨提示

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

評論

0/150

提交評論