C語言第四章程序控制結(jié)構(gòu)復(fù)習(xí)題_第1頁
C語言第四章程序控制結(jié)構(gòu)復(fù)習(xí)題_第2頁
C語言第四章程序控制結(jié)構(gòu)復(fù)習(xí)題_第3頁
C語言第四章程序控制結(jié)構(gòu)復(fù)習(xí)題_第4頁
C語言第四章程序控制結(jié)構(gòu)復(fù)習(xí)題_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

選擇結(jié)構(gòu)程序設(shè)計(jì)復(fù)習(xí)題

一.選擇題

1.已有定義語句:intx=3,y=4,z=5;,則值為0的表達(dá)式是:()

a)x>y++b)x<=++yc)x!=y+z>y-zd)y%z>=y-z

2.已有定義語句:intx=3,y=0,z=0;,則值為0的表達(dá)式是:()

a)x&&yb)x||zc)x||z+2&&y-zd)!((x<y)&&!z||y)

3.x為奇數(shù)時(shí)值為“真”,x為偶數(shù)時(shí)值為“假”的表達(dá)式是:

()

a)!(x%2==l)b)x%2==0c)x%2d)!(x%2)

4.已有定義語句:inta=3,b=4;,則執(zhí)行下述表達(dá)式后,變量b

的值是:()(a++==4)&&(b++==5)

a)3b)4c)5d)6

5.已有定義語句:inta=4,b=6;,則執(zhí)行下述表達(dá)式后,變量b

的值是:()(a++==4)||(b++==6)

a)4b)5c)6d)7

6.已有定義語句:intx=6,y=4,z=5;,執(zhí)行以下語句后,能正確

表示x,y,z值的選項(xiàng)是:()if(x<y)z=x;x=y;y=z;

a)x=4,y=5,z=6

b)x=4,y=6,z=6

c)x=4,y=5,z=5

d)x=5,y=6,z=4

7.以下程序的運(yùn)行結(jié)果是:()

main()

{inti=0;

if(i==O)printf("**");

elseprintf('$');printf("*\n");

)

a)*b)$*c)**d)***

8.若變量a,b,c都為整型,且a=l、b=15>c=0,則表達(dá)式

a==b>c的值是()

a)0b)非零c)“真"d)1

9.a為0時(shí),值為“真”的表達(dá)式是()

a)ab)!(++a)c)a=0d)a==0

10.若有定義和語句:inta=4,b=5,c=0d;d=!a&&!b||!c;,則d

的值是()

a)0b)1c)-1d)非0的數(shù)

11.以下選項(xiàng)不能正確判斷a為偶數(shù)的表達(dá)式是()

a)a%2==0b)!a%2!=0

c)a/2*2-a==0d)!(a%2)

12.有以下程序:

main()

{inta=2,b=l,c=2;

if(b<a)

if(b<0)c=0,

c++;b++;

printf(ub=%d,c=%d\nw,b,c);

)

程序的輸出結(jié)果是:()

a)b=l,c=2b)b=l,c=O

c)b=2,c=2d)b=l,c=l

13.有以下程序:

main()

{intn;

scanf(<<%d,,,&n);

if(n++<5)printf(w%X\n,,,n);

elseprintf(M%X\n,,,n—);

}

若執(zhí)行程序時(shí)從鍵盤上輸入9,則輸出結(jié)果是:()

a)11b)Ac)9d)8

14.有以下程序:

main()

{intm=5;

if(++m>5)

if(m++>5)printf(u%d\nw,m+5);

elseprintf("%d\n",m--);

elseprintf(M%d\nw,—m);

程序的輸出結(jié)果是:()

a)8b)5c)10d)12

15.有以下程序:

main()

{floatx=2.0,y;

if(x<0.0)y=0.0;

elseif(x<5.0)&&(!x))y=1.0/(x+2.0);

elseif(x<10.0)y=1.0/x;

elsey=1.0;

printf(w%f\nw,y);

}

程序的輸出結(jié)果是:()

a)0.000000b)0.250000

c)0.500000d)1.000000

16.假設(shè)所有變量均已正確說明:

a=b=c=0;x=35;

if(!a)x—;

elseif(b);if(c)x=3;

elsex=4;

以上程序段運(yùn)行后,x的值是:()

a)34b)35c)4d)3

17.當(dāng)a=l、b=3、c=5>d=4時(shí),執(zhí)行下面一段程序:

if(a<b)

if(c<d)x=l;

else

if(a<c)

if(b<d)x=2;

elsex=3;

elsex=6;

elsex=7;

以上程序段運(yùn)行后,x的值是:()

a)1b)2c)3d)6

18.執(zhí)行以下程序:

main()

{ints,t,a,b;

scanf(M%d,%dw,&a,&b);

s=l;t=l;

if(a>0)s=s+l;

if(a>b)t=s+t;

elseif(a==b)t=5;

elset=2*s;

printf(4<t=%d\n",t);

要使輸出結(jié)果為:t=4,給a和b輸入的值應(yīng)滿足的條件是:()

a)a>bb)a<b<0c)0<a<bd)0>a>b

19.以下程序的輸出結(jié)果是:()

main()

{inta=5,b=4,c=6,d;

printf(4<%d\nw,d=a>b?(a>c?a:c):(b));

}

a)5b)4c)6d)不確定

20.若有定義語句:intx=3,y=2,z=l;則以下表達(dá)式的值是:

()z*=(x>y?++x:y++)

a)0b)1c)4d)3

21.有以下程序:

main()

{inta=15,b=21,m=0;

switch(a%3)

{case0:m++;break;

case1:m++;

switch(b%2)

{default:m++;

case0:m++;break;

printf(w%d\n,,,m);

程序的輸出結(jié)果是:()

a)1b)2c)3d)4

22.以下while循環(huán)中,循環(huán)體執(zhí)行的次數(shù)是:()

k=l;

while(―k)k=10;

a)10次b)無限次c)一次也不執(zhí)行d)1次

23.有以下程序段,其中x為整型變量,以下選項(xiàng)中敘述正確

的是:()

x=0;

while(!x!=0)x++;

a)退出while循環(huán)后,x的值為0

b)退出while循環(huán)后,x的值為1

c)while的控制表達(dá)式是非法的

d)while循環(huán)執(zhí)行無限次

24.有以下程序段,其中n為整型變量,執(zhí)行后輸出結(jié)果是:

()

n=20;

while(n-);printf(w%dw,n);

a)2b)10c)-1d)0

25.有以下程序段,其中t為整型變量,以下選項(xiàng)中敘述正確

的是:()

t=l;

while(-1)

{t";

if(t)break;}

a)循環(huán)一次也不執(zhí)行

b)循環(huán)執(zhí)行一次

c)循環(huán)控制表達(dá)式(-1)不合法

d)循環(huán)執(zhí)行2次

26.有以下程序段,其中x為整型變量,以下選項(xiàng)中敘述正確

的是:()

x=-l;

do

{;}

while(x++);

printf(Mx=%dw,x);

a)該循環(huán)沒有循環(huán)體,程序錯(cuò)誤

b)輸出x=l

c)輸出x=0

d)輸出x=-l

27.有以下程序段,其中x,y為整型變量,程序輸出結(jié)果是:

()

for(x=0,y=0;(x<=l)&&(y=l);x++,y-);

printf(wx=%d,y=%dw,x,y);

a)x=2,y=0b)x=l,y=O

c)x=l,y=ld)x=O,y=O

28.有以下程序:

main()

{intx=O,y=O;

while(x<5&&++y)y—,x++;

printf("%d,%d”,y,x);

}

程序的輸出結(jié)果是:()

a)0,5b)1,5c)0,4d)1,4

29.有以下程序:

main()

{intnum=0;

do

{num++;printf(M%d\nM,nuin);}

while(num<=2);

)

程序的輸出結(jié)果是:()

a)1b)1c)1d)1

222

33

4

30.有以下程序:

main()

{intx=3;

do

{printf(w%dw,x-=2);}

while(!(—x));

}

程序的輸出結(jié)果是:()

a)1b)30c)1-2d)死循環(huán)

31.有以下程序:

main()

{inty=10;

do{y-;}while(-y);

printfC44%d\nw,y-);

)

程序的輸出結(jié)果是:()

a)1b)-1c)8d)0

32.有以下程序:

main()

{intx=3,y;

do

if(!y)printf("x”);

elseprintf("y");

}while(x);

}

程序的輸出結(jié)果是:()

a)xyxb)yyxc)yxxd)yxy

33.有以下程序段,此處do-while循環(huán)的結(jié)束條件是:()

intn=0,p;

do{scanf(<4%dw,&p);n++;}while(p!=12345&&n<3);

a)p的值不等于12345并且n的值小于3

b)p的值等于12345并且n的值大于等于3

c)p的值不等于12345或者n的值小于3

d)p的值等于12345或者n的值大于等于3

34.有以下程序:

main()

{inta,b,t;

for(a=3,b=0;!a==b;a—,b++)

if(a>b){t=a;a=b;b=t;}

printf(<<%d,%d\n,,,a,b);

程序的輸出結(jié)果是:()

a)4,1b)1,4c)4,-1d)-1,4

35.有以下程序:

main()

{intx=3,y=0;

do

{while(!y)y=-x;

}while(x—);

printf(4<%d,%d\n”,x,y);

}

程序的輸出結(jié)果是:()

a)-1,3b)-1,-3c)0,0d)1,-3

36.有以下程序:

main()

{intm,n;

printf("Enterm,n:");scanf(t<%d%d,,,&m,&n);

while(m!=n)

{while(m>n)m-=n;

while(n>m)n-=m;}

printf(Mm=%d\n,,,m);

程序的輸出結(jié)果是:()

a)m=3b)m=2c)m=ld)m=0

37.有以下程序:

main()

{inti,s=l;

for(i=l;i<=50;i++)

if(!(i%5)&&!(i%3))s+=i;

printf(4<%d\n?,,s);

)

程序的輸出結(jié)果是:()

a)409b)277c)1d)91

38.有以下程序:

main()

{intx=0,y=0,i;

for(i=l;;++i)

{if(i%2==0){x++;continue;}

if(i%5==0){y++;break;}

}

printf(u%d,%d,,,x,y);

)

程序的輸出結(jié)果是:()

a)2,1b)2,2c)2,5d)5,2

39.有以下程序:

main()

{inti=O,a=O;

while(i<30)

{for(;;)

{if((i%10)==0)break;

elsei-;}

i+=ll;a+=i;

}

prmtf(4<%d\nw,a);

}

程序的輸出結(jié)果是:()

a)66b)63c)33d)32

40.有以下程序:

main()

{inta,b;

for(a=l,b=l;a<=100;a++)

{if(b>=10)break;

if(b%3==l)

{b+=3;continue;}

printf("%d\n”,a);

程序的輸出結(jié)果是:()

a)101b)6c)5d)4

41.有以下程序:

main()

{inti=0;

for(i+=3;i<=5;i=i+2)

switch(i%5)

{case0:printf(w*w);

case1:printf("#");break;

default:printf(<<!^^);break;

case2:

)

}

程序的輸出結(jié)果是:()

a)*#b)!&c)!*#d)*#*

二.填空題

1.設(shè)y是int型變量,請寫出當(dāng)y是奇數(shù)時(shí)值為1的關(guān)系表達(dá)

式y(tǒng)%2或y%2==0或y%2!=0.

2.表示“整數(shù)x的絕對值大于5”時(shí)值為“真”的C語言表達(dá)

式是x>5||x<-5.

3.若x為int類型,請以最簡單的形式寫出與!x等價(jià)的C語言

表達(dá)式x==0.

4.設(shè)x,y,z,t均為int型變量,則執(zhí)行下述語句后,x的值是_4_,

y的值是_3_,z的值是_4_,t的值是

x=y=z=3;t=(++x||++y)&&++z;

5.若有定義語句:inta=l,b=2,c=3,d=4;,則執(zhí)行下述表達(dá)式后,

表達(dá)式的值是___,a的值是_1_,b的值是_2__,c

的值是__2_,d的值是_5_。

(a*=a<b)&&(c-=b<=d++);

6.以下程序的運(yùn)行結(jié)果是

main()

{inta=O,b=O,c;

if(a>b)c=l;

elseif(a=b)c=0;

elsec="l;

printf(4<%dXn^jC);

}

7.若有定義:inta=5,b=4,c=9;,以下語句的執(zhí)行結(jié)果是

###a=6.b=3.c=9。

a++<=5&&b—<=2&&c++

?printf(w***a=%d,b=%d,c=%d\n,,,a,b,c):

printf(w###a=%d,b=%d,c=%d\nM,a,b,c);

8.若從鍵盤上輸入3和4,執(zhí)行以下程序后的輸出結(jié)果是

_36—.

main()

{inta=O,b=O,s=O;

scanf(M%d%d,,,&a,&b);

if(a<b)s=b*a,s*=a;

printf(4<%d\nM,s);

)

9.若從鍵盤上輸入58,則以下程序的輸出結(jié)果是_585858_.

main()

{inta;

scanf(M%d”,&a);printf(“%d”,a);

if(a<50)printf(w%d,,,a);

if(a>40)printf(u%d,,,a);

if(a>30)printf(<<%d,,,a);

)

10.以下程序的運(yùn)行結(jié)果是_!#—.

main()

{inta=0,b=4,c=5;

switch(a==0)

{case1:switch(b<0)

{case1:printf("@”);break;

case0:printf(<<!w);break;

case0:switch(c==5)

{case0:printf("*");break;

case1:prmtf(M#w);break;

default:printf(<<%?,);

}break;

default:printf(w&M);

}

}

11.要求使以下程序段輸出10個(gè)整數(shù),請?zhí)羁铡?/p>

for(i=0;i<=_18_;printf(t<%d\n,,,i+=2));

12.執(zhí)行下面程序段后,k的值是0o

r=l;n=203;k=l;

do{k*=n%10*r;n/=10;r++;}while(n);

13.下面程序的輸出結(jié)果是—12510o

main()

{inti,x=10;

for(i=l;i<=x;i++)

if(x%i==0)printf(w%dw,i);

}

14.下面程序的輸出結(jié)果是無定值______、

main()

{inti,sum;

for(i=l;i<6;i++)sum+=i;

printf(4<%d”,sum);

}

15.下面程序的輸出結(jié)果是_20_。

main()

{inti,sum=O;

for(i=2;i<10;i++)

{if((i%2)!=0)continue;

sum+=i;}

printf(w%d\n,,,sum);

}

16.下面程序的輸出結(jié)

溫馨提示

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

提交評論