3微機練習(xí)選擇結(jié)構(gòu)有答案_第1頁
3微機練習(xí)選擇結(jié)構(gòu)有答案_第2頁
3微機練習(xí)選擇結(jié)構(gòu)有答案_第3頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、一、選擇題1. 邏輯運算符兩側(cè)運算對象的數(shù)據(jù)類型 。A. 只能是0或1B, 只能是0或非0正數(shù)C, 只能是整型或字符型數(shù)據(jù)D. 可以是任何類型的數(shù)據(jù)2. 下列關(guān)系表達式中結(jié)果為假的是。A. 0!=1B. 2<=8C. (a=2*2) =2D. y=(2+2)= =43. 下列運算符中優(yōu)先級最低的是oA. ?:B. += C. >=D.=4. 能正確表示“當(dāng)x的取值在1,10和200,210范圍內(nèi)為真,否則為假” 的表達式是0A. (x>=l)&& (x<=10)&&(x>=200) &&(xv=210)B. (x&g

2、t;=l) | (x<=10)II(x>=200) | (xv=210)C ? (x>=l) && (xv=II(x>=200) &&D0)(x>=l) | (x<=10)&&(xv=210)(x>=200) | (xv=210)5. 判斷char型變量ch是否為大寫字母的正確表達式是。A. 'A' <=ch<= 'Z'B. (ch>= 'A' ) & (ch<= 'Z')C. (ch>= 'A&

3、#39; ) && (ch<= 'Z' ) D. (ch>= 'A' ) AND (ch<= 'Z')6. 設(shè)x、y和z是int型變量,且x=3, y=4, z=5,則下面表達式中值為0的 是°A. 'x' && 'y'B. x<=yC. x | y+z && y-zD. !(x<y) && !z | 1)7. 設(shè)有說明語句:int x=43, y=0; char ch='A'則表達式(x>

4、=y && chv'B'&& !y)的值是OA. 0B.語法錯C. 1D.假8. 若希望當(dāng)A的值為奇數(shù)時,表達式的值為“真"當(dāng)A的值為偶數(shù)時,表達式的值為“假”。則以下不能滿足要求的表達式是。A. A%2=1B. !(A%2=0)C. !(A%2)D. A%29. 設(shè)有說明語句:int a=l, b=2, c=3, d=4, m=2, n=2;,則執(zhí)行(m=a>b) && (n=c>d) 后 n 的值為 oA. 1 B. 2 C. 3 D. 010. 以下程序的運行結(jié)果是#include <stdio.

5、h>int main()int a,b,d=241;a=d/100%9;b=(-l)&& (-1);printf( ”d,%d” ,a,b);return 0;A. 6, 1 B. 2, 1 C. 6, 0 D. 2, 011. 以下不正確的 if 語句形式是 oA. if(x>y && x!=y);B. if (x= =y) x+=y;C. if (x!=y) scanf("%d'',&x) else scanf ("%d ” , &y);D. if (x<y) (x+; y+;12. 在

6、C 語言中,緊跟在關(guān)鍵字 if 后有一對圓括號里的表達式A. 只能用邏輯表達式B. 只能用關(guān)系表達式C. 只能用邏輯表達式或關(guān)系表達式D. 可以是任意表達式13. 已知int x=10, y=20, z=30;執(zhí)行以下語句后x、y、z的值是。if (x>y) z=x; x=y; y=z;A. x=10, y=20? z=30B. x=20, y=30, z=30C. x=20, y=30, z=10D. x=20, y=30,14. 以下程序 z=20#include<stdio.h>int main()int a=5, b=0, c=0;if(a=b+c) print 町n

7、”;)else printf("$n");return 0;A.有語法錯誤不能通過編譯C.輸出*B. 可以通過編譯但不能通過 連接15. 當(dāng) a=l、b=3、c=5、d=4 時,執(zhí)行以下程序段后 x 的值是。 if(a<b) if(c<d) x=l;else iRaVc) if(b<d) x=2;else x=3;else x=6;else x=7;A. 1 B. 2 C. 3 D. 616. 以下程序的輸出是 o #include<stdio. h> int main() int x=2, y= -1, z=2; if(x<y)if(y

8、<0) z=0;else z+=l; printf("%dn",z); return 0;A. 3 B. 2 C. 1 D. 017. 若有條件表達式(exp)? a+: b-則以下表達式中能完全等價于表達式(exp) 的是 oA. (exp= =0)B. (exp!=0)C. (exp= =1)D. (exp!=l)18. 若運行時為變量 x 輸入 12,則以下程序的運行結(jié)果是 。 #include<stdio. h> int main() ( int x,y;scanf("%d",&x);y=x>12? x+10:x-

9、12;printf("%dn",y);return 0;A. 0B. 22 C. 12 D. 1019. 若 w、x、y、z、m 均為 int 型變量,則執(zhí)行下面語句后的 m 值是。w=l; x=2; y=3; z=4; m=(w<x)?w: x;m=(m<y)?m: y;m=(m<z)?m: z;A. 1B. 2C. 3D. 420. 若 w=l、x=2、y=3、z=4,則條件表達式 w<x?w:y<z?y:z 的值為。A. 4B. 3C. 2D. 121. C語言中的switch語句形式如下所示,關(guān)鍵字switch后一對圓括號中表達式exp

10、的類型°switch(exp)case常量表達式1:語句1 ;case常量表達式 n: 語句 n;default :語句 n+1 ;11. C 12. D 13. B A5可以是整型或字符型C. 只能是字符型B.只能是int類型D. 只能是整型或?qū)嵭痛鸢福篋 2. C 3.B4. C 5.6. D 7. C 8. C 9. B 10. B15. B 16. B 17. B 18. A 19. AC20. D 21. A、填空題1. 當(dāng)a=3, b=2, c=l時,表達式f=a>b>c的值是.2. 以下程序的運行結(jié)果是 o #include<stdio. h>

11、int main() ( int x=l,y,z;x*=3+2;printf("%dt",x);x*=y=z=5;printf("%dt",x);x=y=z;printf("%dn",x);return 0;3. 在 C 語言中,表示邏輯“真”值用 。4. 設(shè)y為int型變量,請寫出描述“是奇數(shù)”的表達式5. C 語言提供的 3種邏輯運算符是、 、。6. 若x、y、z均為int型變量,則描述“x y和z中有兩個為負數(shù)”的表達式是07. 設(shè) a、b、c 均為 int 型變量且 a=7.5, b=2, c=3.6則表達式 a>b &

12、amp;& c>a | a<b&& !c>b的值是o8. 若有條件"2<x<3或xv.10 :其對應(yīng)的C語言表達式是o9. 設(shè) m、n、a、b、c均為int型變量且 m=2, n=l, a=l, b=2, c=3,則執(zhí)行表 達式 d=(m=a!=b) && (n=b>c)后,n 的值為;m 的值為。10. 將以下兩條if語句合并成一條if語句為o語句 1: if (a>b) scanf ("%d” , &a);else scanf ("%d", & b);語

13、句 2: if (av=b) m+;else n+;11. 滿足以下要求的邏輯表達式是o要求:判斷坐標(biāo)為(x,y)的點,在內(nèi)徑為a,外徑為b,中心點在0點上的圓環(huán)內(nèi) 的表 達式。12. 若運行以下程序時輸入:1605V回車,則以下程序的運行結(jié)果是。#in clude<stdio. h>int mai n()int t,h,m;scanf( % d”,&t);h=(t/100)%12;if(h= =0) h=12;printf( %T,h);m=t%100;if(m<10) printf( H0H);printf( % ,m);if(t<1200 | t=2400

14、) printRn” ”)AMelse prin tffPMW);return 0;13,以下程序的功能是:輸入圓的半徑r和運算標(biāo)志m后,按照運算標(biāo)志進行表中指定的計算。請?zhí)羁?。運算標(biāo)志m計算a面積c周長b二者均計算#i nclude<stdio.h>#defi ne pi 3.14159int mai n()char m;float r,c,a;print 町 in put mark a c or b && rnn);sca nf("%cif()a=pi*r*r; printf( narea is %fa);if()c=2*pi*r; printf( ”

15、 circle) %fif()a=pi*r*r; c=2*pi*r; printR” area && circle e,%;fcreturn 0;14.若運行時輸入:5999V回車,則以下程序的運行結(jié)果是(保留小數(shù)點后一 位)0#i nclude<stdio.h>int mai n()int x;float y;scanf( %d”,&x);iRx>=0 && x<=2999)廣 18+0.12*x;iRx>=3000 && xv=5999) y=36+0.6*x;iRx>=6000 &&

16、; x<= 10000) y=54+0.3*x;prin tf(n%6.1fy);return 0;15.以下程序的功能是:輸出x、y、z三個數(shù)中的最大者。請?zhí)羁铡?i nclude<stdio.h>int mai n()int x=4,y=6,z=7;int;if() u=x; else u=y;if() v=u; else v=z;printf( ” v=%d” ,v);return 0;16. 以下程序的功能是:輸入 3 個整數(shù),按從大到小的順序進行輸出。請?zhí)羁铡?#include<stdio.h>int main() int x,y,z,c;scanf(

17、”d%d%”d ,&x,&y,&z) ;if() c=y; 尸 z;z=c;if() c=x;x=z;z=c;if( ) c=x;x=y; 尸 c;printf( ”n” ,x,y,z);return 0;17. 以下程序的功能是:輸入一個字符,如果它是一個大寫字母,則把它變成小 寫字母;如果它是一個小寫字母,則把它變成大寫字母;其他字母不變。請?zhí)?空。 #include<stdio.h>int main() char ch;scanf( ”c” ,&ch);if() ch=ch+32;else if(ch>=,a, && ch

18、v='z') ;printf(n%cnn,ch);return 0;18. 以下程序的運行結(jié)果是 。#include<stdio.h>int main()int a,b,c,d,x;a=c=O;b=l;d=20;iRa) d=d-10;else iR!b)if(!c) x=15; else x=25; prin tf(n%dnF); return 0;19,下面程序的功能是:根據(jù)表中給定的函數(shù)關(guān)系,對輸入的每個x值計算出相應(yīng)的y值。請?zhí)羁?。Xy2<x<10x(x+2)-l<x<22xX<-1x-l#i nclude<stdio.h

19、> int mai n()int x,y;scanf( %d”,&x);if() y=x*(x+2);else if() y=2*x;else iRxv=-l) y=x-l;else ;iRy!=-l) printf( n%dnn,y);else prin tf("error nn);return 0;20. 若運行以下程序時輸入:-2回車,則程序的輸出結(jié)果是#i nclude<stdio.h>int mai n()int a,b;scanf( %d” ,&a);b=(a>=0)? a:-a;printf( ” b=%)d,b);return

20、0;21. 若運行以下程序時輸入字母為Q,則程序的運行結(jié)果是 o #i nclude<stdio.h> int mai n()char ch;seanf( %c”,&ch);ch=(ch>='A' && chv=Z)? (ch+32):ch;ch=(ch>=, a' && ch<-z !)? (ch-32):ch;printf( %” n” ,ch)return 0;22. 若運行以下程序時輸入:1992回車,則程序的運行結(jié)果是。#i nclude<stdio.h>int mai n()i

21、nt y,t;scanf( % d”,&y);t=(y%4=0 && y%100!=0) | y%400=0)? 1:0;iRt) printf(n%d is ” ,y);else printff%d is not ” ,y);print 町 a leap yearn");return 0;23. 若x、y、z均已正確定義且x=l, y=2, z=3,則執(zhí)行以下if語句后,x、y、z中 的值分別是、oif(x>z)y=x; x=z; z=y;24. 將以下含有switch語句的程序段改寫成對應(yīng)的含有非嵌套if語句的程序段。請?zhí)羁?。含有switch語句的程

22、序段:int x,y,m;y=(i nt)(x/10);switch(y) case 10: m=5;break;case 9: m=4;break;case 8: m=3;break;case 7: m=2;break;case 6: m=l;break;default: m=0;含有非嵌套if語句的程序段:int x,m;if() m=5;if(x< 100 && x>=90) m=4;if(x<90 && x>=80) m=3;if(x<80 && x>=70) m=2;if(x<70 &&

23、amp; x>=60)m=l;if()25. 根據(jù)以下給出的嵌套if語句,填寫對應(yīng)的switch語句,使它完成相同的功 能。(假設(shè)mark的取值在1 100之間。)if 語句:if(mar<60) k=l;else if( mark<70) k=2;else if( mark<80) k=3;else if( mark<90) k=4;else if( markv=100) k=5;switch 語句:switch ()J k=;break;case 6: k=2; break;case 7: k=3;break;case 8: k=4;break;=5;26.

24、以下程序的輸出結(jié)果是o#i nclude<stdio.h>int mai n()int x=l,y=0;switch(x)case 1:switch(y)case 0: print 町 n”);break;case 2: printf( ” n*2*break;return 0;27. 下面程序的功能是:根據(jù)表4-6中給定的函數(shù)關(guān)系,對輸入的每個 x值,計 算出相應(yīng)的y值。請?zhí)羁?。Xyx<000<=x<10X10<=x<201020<=x<40-0.5x+20float y;seanf( %d”,&x);if() e=-1 ;else e=;switeh(e)ease -1: y=0;break;ease 0: y=x;break;ease 1: y=10;break;ease 2:ease 3: y=-0.5*

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論