C語言基礎(chǔ)知識訓練題大全_第1頁
C語言基礎(chǔ)知識訓練題大全_第2頁
C語言基礎(chǔ)知識訓練題大全_第3頁
C語言基礎(chǔ)知識訓練題大全_第4頁
已閱讀5頁,還剩192頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

C語言基礎(chǔ)知識訓練題大全POWEREDBYSYD1682010年5月7日第1部分C語言理論基礎(chǔ)(1)算法具有五個特性,以下選項中不屬于算法特性的是A)有窮性B)簡潔性C)可行性D)確定性(2)以下敘述中正確的是A)用C程序?qū)崿F(xiàn)的算法必須要有輸入和輸出操作B)用C程序?qū)崿F(xiàn)的算法可以沒有輸出但必須要有輸入C)川C程序?qū)崿F(xiàn)的算法可以沒有輸入但必須要有輸出D)用C程序?qū)崿F(xiàn)的算法可以既沒有輸入也沒有輸出(3)用C語言編寫的代碼程序A)可立即執(zhí)行 B)是ー個源程序C)經(jīng)過編譯即可執(zhí)行 D)經(jīng)過編譯解釋才能執(zhí)行(4)結(jié)構(gòu)化程序由三種基本結(jié)構(gòu)組成,三種基本結(jié)構(gòu)組成的算法A)可以完成任何復雜的任務(wù) B)只能完成部分復雜的任務(wù)C)只能完成符合結(jié)構(gòu)化的任務(wù)D)只能完成一些簡單的任務(wù)(5)ー個算法應(yīng)該具有“確定性”等5個特性,下面對另外4個特性的描述中錯誤的是A)有零個或多個輸入 B)有零個或多個輸出C)有窮性 D)可行性(6)以下敘述中正確的是C語言的源程序不必通過編譯就可以直接運行C語言中的每條可執(zhí)行語句最終都將被轉(zhuǎn)換成二進制的機器指令C源程序經(jīng)編譯形成的二進制代碼可以直接運行C語言中的函數(shù)不可以單獨進行編譯)以下敘述中正確的是A)C語言比其他語言高級C語言可以不用編譯就能被計算機識別執(zhí)行C語言以接近英語國家的自然語言和數(shù)學語言作為語言的表達形式D)C語言出現(xiàn)的最晩,具有其他語言的一切優(yōu)點(8)C語言中用于結(jié)構(gòu)化程序設(shè)計的三種基本結(jié)構(gòu)是A)順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)B)if>switch,breakC)for,while>do-whileD)if、for>continue(9)結(jié)構(gòu)化程序設(shè)計所規(guī)定的三種基本控制結(jié)構(gòu)是A)輸入、處理、輸出 B)樹形、網(wǎng)形、環(huán)形C)順序、選擇、循環(huán) D)主程序、子程序、函數(shù)(10)要把高級語言編寫的源程序轉(zhuǎn)換為H標程序,需要使用A)編輯程序B)驅(qū)動程序C)診斷程序D)編譯程序答案:1)B2)C3)B4)C5)B6)B7)C8)A9)C10)D第2部分 C語言基本語法知識ー、選擇題(1)以下敘述中錯誤的是A)用戶所定義的標識符允許使用關(guān)鍵字B)用戶所定義的標識符應(yīng)盡量做到“見名知意”C)用戶所定義的標識符必須以字母或下劃線開頭D)用戶定義的標識符中,大、小寫字母代表不同標識(2)以下敘述中錯誤的是A)C語句必須以分號結(jié)束B)復合語句在語法上被看作一條語句C)空語句出現(xiàn)在任何位置都不會影響程序運行D)賦值表達式末尾加分號就構(gòu)成賦值語句(3)以下不能正確計算代數(shù)式值的C語言表達式是A)l/3*sin(l/2)*sin(l/2) B)sin(O.5)*sin(O.5)/3C)pow(sin(0.5),2)/3 D)l/3.0*pow(sin(1.0/2),2)(4)以下能正確定義且賦初值的語句是A)intnl=n2=10; B)charc=32;C)floatfMM.l; D)doublex=12.3E2.5;(5)設(shè)有定義:intk=l,m=2;floatf=7;,則以下選項中錯誤的表達式是A)k=k>=kB)-k++C)k%int(f)D)k>=f>=m(6)有以下程序段intk=0,a=l,b=2,c=3;k=a<b?b:a;k=k>c?c:k;執(zhí)行該程序段后,k的值是A)3 B)2 C)1 D)0(7)以下選項中可作為C語言合法常量的是A)-80.B)-080C)-8el.OD)-80.0e(8).以下不能定義為用戶標識符的是A)MainB),0C)_intD)sizeof(9)以下選項中,不能作為合法常量的是A)1.234e04B)1.234e0.4C)1.234e+4D)1.234e0(10)有以下程序main(){intm=12,n=34;printfi(,,%d%d,,,m-H-,++n);printfC%d%d\n”,n++,++m);}程序運行后的輸出結(jié)果是A)12353514B)12353513C)12343514D)12343513(11)若整型變量a、b、c、d中的值依次為:1、4、3、2〇則條件表達式a〈b?a:cvd?c:d的值A(chǔ))1B)2c)3D)4(12)下列選項中,不能用作標識符的是A)1234B)12C)int2 D)2int(13)有以下程序main(){intm=3,n=4,x;x=?m++;x=x+8/++n;printff%d\n”,x);}程序運行后的輸出結(jié)果是A)3 B)5C)-lD)-2(14)以下符合C語言語法的實型常量是A)1.2E0.5 B)3.14.159EC),5E-3 D)E15(15)以下4組用戶定義標識符中,全部合法的ー組是A)_mainB)If C)txtD)intenclude-maxREALk_2sinturbo3C0M001(16)若以下選項中的變量已正確定義,則正確的賦值語句是A)xl=26.8%3B)l+2=x2C)x3=0xl2D)x4=l+2=3;(17)設(shè)有以下定義inta=0;doubleb=1.25;charc=,A\#defined2則下面語句中錯誤的是A)a-H-;B)b++C)C"H-;D)d++;(18)設(shè)有定義:floata=2,b=4,h=3;,以下C語言表達式與代數(shù)式計算結(jié)果不相符的是A)(a+B)*h/2 B)(l/2)*(a+B)*hC)(a+B)*h*l/2D)h/2*(a+B)(19)以下敘述中正確的是A)C程序中注釋部分可以出現(xiàn)在程序中任意合適的地方B)花括號“{"和"}''只能作為函數(shù)體的定界符C)構(gòu)成C程序的基本單位是函數(shù),所有函數(shù)名都可以由用戶命名D)分號是C語句之間的分隔符,不是語句的一部分(20)以下選項中可作為C語言合法整數(shù)的是A)10110BB)0386C)OXflfaD)x2a2(21)以下不能定義為用戶標識符的是A)scanfB)VoidC)_3comD)int(22)設(shè)變量x為float型且已賦值,則以下語句中能將x中的數(shù)值保留到小數(shù)點后兩位,并將第三位四舍五入的是A)x=x*100+0.5/100.0; B)x=(x*100+0.5)/100.0;C)x=(int)(x*100+0.5)/100.0;D)x=(x/100+0.5)*100.0;(23)下列關(guān)于C語言用戶標識符的敘述中正確的是用戶標識符中可以出現(xiàn)在下劃線和中劃線(減號)用戶標識符中不可以出現(xiàn)中劃線,但可以出現(xiàn)下劃線用戶標識符中可以出現(xiàn)下劃線,但不可以放在用戶標識符的開頭用戶標識符中可以出現(xiàn)在下劃線和數(shù)字,它們都可以放在用戶標識符的開頭(24)下列關(guān)于單目運算符++、ー的敘述中正確的是A)它們的運算對象可以是任何變量和常量B)它們的運算對象可以是char型變量和int型變量,但不能是float型變量C)它們的運算對象可以是int型變量,但不能是double型變量和float型變量D)它們的運算對象可以是char型變量、int型變量和float型變量(25)以下選項中合法的實型常數(shù)是A)5E2.0B)E-3C).2E0 D)1.3E(26)以下選項中合法的用戶標識符是A)longB)_2TestC)3DmaxD)A.dat(27)以下非法的賦值語句是A)n=(i=2,++i);B)j-H-;〇++(i+l);D)x=j>0;(28)設(shè)a和b均為double型變量,且a=5.5、b=2.5,則表達式(int)a+b/b的值是A)6.500000B)6C)5.500000D)6.000000(29)與數(shù)學式子對應(yīng)的C語言表達式是A)3*xAn(2*x-l)B)3*x**n(2*x-l)C)3*pow(x,n)*(l/(2*x-1))D)3*pow(n,x)/(2*x-1)(30)若有以下程序:main(){intk=2,i=2,m;m=(k+=i*=k);printff%d,%d\n”,m,i);執(zhí)行后的輸出結(jié)果是A)8,6 B)8,3 C)6,4D)7,4(31)以下選項中,與k=n++完全等價的表達式是A)k=n,n=n+lB)n=n+l,k=nC)k=++nD)k+=n+l(32)若有定義:inta=8,b=5,C:,執(zhí)行語句C=a/b+0.4;后,c的值為A)1.4 B)1 C)2.0 D)2(33)以下選項中不屬于C語言的類型的是A)signedshortimtB)unsignedlongintunsignedint D)longshort(34)以下敘述正確的是A)可以把define和if定義為用戶標識符B)可以把define定義為用戶標識符,但不能把if定義為用戶標識符C)可以把if定義為用戶標識符,但不能把define定義為用戶標識符define和if都不能定義為用戶標識符(35)在C語言中,合法的長整型常數(shù)是A)OLB)4962710C)324562& D)216D(36)以下有4組用戶標識符,其中合法的一組是A)ForB)4dC)f2_G3D)WORD-subDO圧voidCaseSizeabcdefine(37)假定x和y為double型,則表達式x=2,y=x+3/2的值是A)3.500000B)3 C)2.000000D)3.000000(38)以下合法的賦值語句是A)x=y=100B)d-;C)x+y;D)c=int(a+b);(39)設(shè)正x、y均為整型變量,且x=10y=3,則以下語句的輸出結(jié)果是pprintf(,,%d,%d\n,,,x—y);A)10,3 B)9.3C)9.2 D)10.2(40)以下程序的輸出結(jié)果是main(){inta=3;printfi("%d\n'',(a+a-=a*a));}A)-6 B)12 C)0 D)-1241)以下所列的C語言常量中,錯誤的是A)OxFFB)1.2e0.5C)2LD)'\72'(42)下列選項中,合法的C語言關(guān)鍵字是A)VARB)cher C)integerD)default(43)以下變量x.、y、z均為double類型且已正確賦值,不能正確表示數(shù)學式子的C語言表達式是A)x/y*zB)x*(l/(y*z))C)x/y*l/zD)x/y/z(44)若a為int類型,且其值為3,則執(zhí)行完表達式a+=a?=a*a后,a的值是A)-3 B)9 C)-12 D)6(45)若變量已正確定義并賦值,下面符合C語言語法的表達式是A)a:=b+1 B)a=b=c+2 C)int18.5%3 D)a=a+7=c+bC語言中運算對象必須是整型的運算符是%= B)/ C)= D)〈=(47)若已定義x和y為double類型,則表達式x=l,y=x+3/2的值是A)1 B)2 C)2.0 D)2.5(48)若變量a、il已正確定義,且i已正確賦值,合法的語句是A)a=l B)++i; C)a=a"=5; D)a=hit⑴;(49)若有以下程序段,intcl=l,c2=2,c3;c3=1.0/c2*cl;則執(zhí)行后,c3中的值是A)0 B)0.5Q1D)2(50)設(shè)有intx=ll;則表達式(x-H-*1/3)的值是A)3 B)4C)11D)12(51)下列程序的輸出結(jié)果是A)3 B)3.2〇〇D)3.07main(){doubled=3.2;intx,y;x=1.2;y=(x+3.8)/5.0;printf(n%d\nH,d*y);

(52)下列變量定義中合法的是short_a=l-.Ie-1; B)doubleb=l+5e2.5;longdo=0xfidaL; D)float2_and=l-e-3;(53)以下選項中屬于C語言的數(shù)據(jù)類型是A)復數(shù)型B)邏輯型〇雙精度型 D)集合型(54)在C語言中,不正確的int類型的常數(shù)是A)32768A)32768B)0C)037D)OxAF(55)設(shè)x、y、z和k都是int型變量,則執(zhí)行表達式:x=(y=4,z=16,k=32詬,x的值為A)4 B)16(56)設(shè)有如下的變量定義:inti=8,k,a,b;A)4 B)16(56)設(shè)有如下的變量定義:inti=8,k,a,b;unsignedlongw=5;doublex=l,42,y=5.2;則以下符合C語言語法的表達式是A)a+=a-=(b=4)*(a=3)C)a=a*3=2(57)假定有以下變量定義:intk=7,x=12;則能使值為3的表達式是x%=(k%=5)B)x%=(k-k%5)C)32x%(-3);D)y=float(i)C)x%=k-k%5D)52D)(x%=k)-(k%=5)(58)設(shè)x和y均為int型變量,則以下語句:x+=y,戸x?y;x?=y;的功能是A)把x和y按從大到小排列 B)把x和y按從小到大排列C)無確定結(jié)果 D)交換x和y中的值(59)以下程序的輸出結(jié)果是A)1010B)12 12C)11 10D)11 13main(){inta=12,b=12;printff%d,%d\n”,??a,++b);}(60)在C語言提供的合法的關(guān)鍵字是A)swicthB)cherC)Case D)default(61)若已定義x和y為double類型,則表達式:x=l,y=x+3/2的值是A)1 B)2 C)2.0 D)2.5C語言提供的合法的數(shù)據(jù)類型關(guān)鍵字是A)DoubleB)short C)integer D)Char(63)在C語言中,合法的長整型常數(shù)是A)0L B)4962710 C)0.054838743 D)2.1869e10(64)若有說明和語句:inta=5;a-H-;此處表達式a丹的值是A)7 B)6 C)5 D)4C語言中最簡單的數(shù)據(jù)類型包括A)整型、實型、邏輯型 B)整型、實型、字符型C)整型、字符型、邏輯型D)整型、實型、邏輯型、字符型C語言中,運乍對象必須是整型數(shù)的運算符是A)% B)\ C)%和'D)**(67)設(shè)有如下定義:intx=10,y=3,z;則語句printfi(H%d\n,\z=(x%y,x/y));的輸出結(jié)果是A)1 B)0 C)4 D)3(68)以下程序的輸出結(jié)果是main(){intx=10,y=10;printf(M%d%d\nH,x-,-y); }A)1010 B)99 C)910 D)109(69)下列語句中符合C語言語法的賦值語句是A)a=7+b+c=a+7;B)a=7+b++=a+7;C)a=7+b,b++,a+7D)a=7+b,c=a+7;(70)在C語言中,要求運算數(shù)必須是整型的運算符是TOC\o"1-5"\h\zA)% B)/ C)< D)!(71)請選出可用作C語言用戶標識符的ー組標識符A)void B)a3_b3 C)For D)2adefine _123 -abc DOWORD IF Case sizeof(72)設(shè)inta=12,則執(zhí)行完語句a+=a?=a*a后,a的值是A)552 B)264C)144D)-264C語言程序的基本單位是A)程序行 B)語句 C)函數(shù) D)字符(74)請選出合法的C語言賦值語句A)a=b=58 B)i++;C)a=58,b=58D)k=int(a+b);(75)在C語言中,如果下面的變量都是int類型,則輸出的結(jié)果是。sum=pad=5;pAd=sum++,pAd++,++pAd;printff%d\n”,pad);A)7 B)6 C)5 D)4(76)以下程序的輸出結(jié)果是。#include<stdio.h>main(){inti=010,j=10;print隼‘%d,%d\n”,++i,j-); }A)11,10B)9,10C)010,9D)10,9二、填空題(1)語句:-H-X;X=X+1;、X=1+X;,執(zhí)行后都使變量X中的值增1,請寫出一條同一功能的賦值語句(不得與列舉的相同)【1】〇(2)若有定義:inta=10,b=9,c=8;接著順序執(zhí)行下列語句后,變量b中的值是[2]〇c=(a-=(b-5));c=(a%ll)+(b=3);(3)設(shè)x和y均為int型變量,且x=l,y=2,則以下表達式的值為[3]〇1.0+x/y(4)數(shù)學式子寫成C語言表達式是【4】〇(5)設(shè)a、b、c為整型數(shù),且a=2、b=3、c=4,則執(zhí)行完以下語句:a*=16+(b-H-)-(-H-c);后,a的值是【5】〇答案:ー、填空題A2)C3)A4)B5)C6)B7)A8)D9)B10)AA12)D13)D14)C15)A16)C17)D18)B19)A20)CD22)C23)B24)D25)C26)B27)C28)D29)C30)CA32)B33)D34)B35)A36)C37)D38)B39)D40)DB42)D43)A44)C45)B46)A47)C48)B49)A50)A51)C52)A53)C54)A55)C56)A57)D58)D59)D60)DC62)B63)A64)C65)B66)A67)D68)D69)D70)A71)B72)D73)C74)B75)C76)B77)78)79)80)二、填空題(l)x+=l(2)3(3)1.0(4)pow(sin(x),2)*(a+b)/(a-b)或sit(x)*sit(x)*(a+b)/(a-b)(5)28第3部分順序結(jié)構(gòu):輸入與輸出ー、選擇題(1)有以下程序main(){intm,n,p;scanf("m=%dn=%dp=%d",&m,&n,&p);printfi("%d%d%d\n",m,n,p);若想從健盤上輸入數(shù)據(jù),使變量m中的值為123,n中的值為456,p中的值為789,則正確的輸入是A)m=123n=456p=789m=123n=456p=789C)m=123,n=456,p=789D)123 456 789(2)有以下程序main(){intm=0256,n=256;printff'%〇%o\nu,mn,n);}程序運行后的輸出結(jié)果是A)02560400B)0256256C)256400D)400400(3)有以下程序main(){inta=666,b=888;printf("%d\n",a,b);)程序運行后的輸出結(jié)果是A)錯誤信息B)666C)888D)666,888(4)有以下程序main()(intx=102,y=012;printfi(t4%2d,%2d\n,\x,y);}執(zhí)行后輸出結(jié)果是A)10,01B)02,12C)102,10D)02,10(5)有以下程序main(){inta;charc=10;floatf=100.0;doublex;a=f7=c*=(x=6.5);printff%d%d%3.1f%3.1f\nn,a,c,f,x);}程序運行后的輸出結(jié)果是A)1 65 16.5 B)1 65 1.5 6.51 65 1.06.5 D)2 65 1.5 6.5(6)有定義語句:intx,y;,若要通過$?2バ("%&%ゼ,&*,&丫);語句使變量ス得到數(shù)值11,變量y得到數(shù)值12,下面四組輸入形式中,錯誤的是1112〈回車〉 B)11,12C回車>C)11,12〈回車〉 D)11,〈回車〉12〈回車〉(7)設(shè)有如下程序段:intx=2002,y=2003;pri1吋%d\n”,(x,y));則以下敘述中正確的是A)輸出語句中格式說明符的個數(shù)少于輸出項的個數(shù),不能正確輸出B)運行時產(chǎn)生出錯信息C)輸出值為2002D)輸出值為2003(8)若有以下程序段(n所賦的是ハ進制數(shù))intm=32767,n=032767printf("%d,%o/n",m,n);執(zhí)行后輸出結(jié)果是A)32767,32767 B)32767,032767C)32767,77777 D)32767,077777(9)若有以下程序段intm=0xabc,n=0xabc;m-=n;printf("%X\n",m);執(zhí)行后輸出結(jié)果是A)0X0B)0x0C)0D)0XABC(10)已知i、j、k為int型變量,若從鍵盤輸入:1,2,3〈回車〉,使i的值為1、j的值為2、k的值為3,以下選項中正確的輸入語句是A)scanfC%2d%2d%2d",&i,&j,&k);scanff'%d%d%d",&i,&j,&k);scanfT%d,%d,%d,',&i,&j,&k);D)scanfi["i=%d,j=%d,k=%d”,&i,&j,&k);(11)設(shè)有定義:longx=-123456L:,則以下能夠正確輸出變量x值的語句是A)printfTx=%d\n'',x);B)printf("x=%1d\n",x);C)printf("x=%8dL\n”,x);D)printf("x=%LD\n”,x);(12)以下程序段的輸出結(jié)果是inta=1234;printfl["%2d\n",a);A)12 B)34C)1234D)提示出錯、無結(jié)果(13)x、y、z被定義為int型變量,若從鍵盤給x、y、z輸入數(shù)據(jù),正確的輸入語句是

A)INPUTx、y、z;B)scanf("%d%d%d”,&x,&y,&z);C)scanfT%d%d%d'',x,y,z);D)read("%d%d%d,',&x,&y,&z);(14)若變量已正確說明為float類型,要通過語句scanfp%f%f%f”,&a,&b,&c);給a賦于10.0,b賦予22.0,c賦予33.0,不正確的輸入形式是:A)10〈回車〉 B)10.0,22.0,33.0V回車〉22〈回車〉33〈回車〉C)10.0〈回車〉 D)1022〈回車〉22.033.0〈回車〉 33〈回車〉(15)有如下程序mainO{inty=3,x=3,z=l;printf("%d%d\n”,(++x,y++),z+2);}運行該程序的輸出結(jié)果是A)34 B)42 C)43 D)33(16)下列程序執(zhí)行后的輸出結(jié)果是(小數(shù)點后只寫一位)B)666.76.7D)66B)666.76.7D)666.76.0B)#define是C語句,而printf不是D)#define和printf都不是C語句C)666.06.7main(){doubled;floatf;ling1;inti;i=fM=d=20/3;printff%d%ld%f%f\n”,ij,£d);}(17)以下說法中正確的是#define和printf都是C語句C)printf是C語句,但#define不是(18)以ド程序的輸出結(jié)果是A)17,021,0x11 B)17,17,1717,0x11,021 D)17,21,11main(){intk=17;printf("%d,%o,%x\n”,k,k,k);}(19)以下敘述中正確的是A)輸入項可以是ー個實型常量,如:scakfi(n%r,3.5);B)只有格式控制,沒有輸入項,也能正確輸入數(shù)據(jù)到內(nèi)存,例如:scakffa=%d,b=%d");C)當輸入一個實型數(shù)據(jù)時,格式控制部分可以規(guī)定小數(shù)點后的位數(shù),例如:scakfi(n%4.2f',&f);D)當輸入數(shù)據(jù)時,必須指明變量地址,例如:scakf(n%r,&f);(20)若有以下定義和語句:intu=010,v=0x10,w=10;printf(M%d,%d,%d\n,u,v,w);則輸出結(jié)果是:A)8,16,10B)10,10,10C)8,8,10D)8,10,10(21)請讀程序片段:inti=65536;printf(H%d\n*',i);上面程序片段的輸出結(jié)果是A)65536 B)0〇有語法錯誤,無輸出結(jié)果 D)-l(22)若x和y都是int型變量,x=100,y=200,且有下面的程序片段:printft"%d",(x,y));上面程序片段的輸出結(jié)果是A)200 B)100〇100200D)輸出格式符不夠,輸出不確定的值(23)請讀程序:#include<stdio.h>main(){inta;floatb,c;scanff%2d%3f%4ロ&a,&b,&c);printff\na=%d,b=%f,c=%f\nH,a,b,c);)若運行時從鍵盤上輸入9876543210<CR>(<CR>表示回車),則上面程序的輸出結(jié)果是A)a=98,b=765,c=4321 B)a=10,b=432,c=8765a=98,b=765.000000,c=4321.000000D)a=98,b=765.0,c=4321.0(24)以下程序的輸出結(jié)果是【24】。include<stdio.h>include<math..h>main(){inta=l,b=4,c=2;floatx=10..5,y=4.0,z;z=(a+b)/c+sqrt((double)y)*1.2/c+x;pritnff%f\n”,z);}A)14.000000B)015.400000C)13.700000D)14.900000(25)以下程序的輸出結(jié)果是【25】〇include<stdio.h>main(){inta=2,c=5;printfi(,,a=%%d,b=%%d\nH,a,c);}A)a=%2,b=%5B)a=2,b=5C)a=%%d,b=%%dD)a=%d,b=%d(26)執(zhí)行下面程序中的輸出語句,a的值是A)65 B)20 C)15 D)10main(){inta;printf(M%d\nn,(a=3*5,a*4,a+5));}二、填空題:(1)以下程序運行后的輸出結(jié)果是 【1】〇main(){intx=0210;printff%X\n”,x);}(2)以下程序運行后的輸出結(jié)果是 【2】〇main(){charc; intn=100;floatf=10; doublex;x=f*=n/=(c=50);printff%d%f\n",n,x);}(3)以下程序運行時若從鍵盤輸入:102030〈回車〉。輸出結(jié)果是#include<stdio.h>main(){inti=Oj=O,k=O;scanf(,,%d%*d%dM,&i,&j,&k);printf(,,%d%d%d\n,,,i,j,k);}(4)以下程序段的輸出結(jié)果是[4] 0inti=9;printff%o\n”,i);(5)以下程序運行后的輸出結(jié)果是[5I〇main(){inta,b,c;a=25;b=025;c=0x25;printfi("%d%d%d\nn,a,b,c);(6)有以下語句段intnl=10,n2=20;printfl:41[6]”,nl.n2);要求按以下格式輸出n!和n2的值,每個輸出行從第一列開始,請?zhí)羁?。nl=10n2=20(7)若有語句inti=-19j=i%4;printf(M%d\nMj);則輸出結(jié)果是【7】〇(8)若有程序main(){intij;scanf(ni=%d,j=%dn;&i,&j);printfCi=%d,j=%d\n”,i,j);}要求給i賦10,給j賦20,則應(yīng)該從鍵盤輸入 【8】〇(9)以下程序的輸出結(jié)果是【9】〇main(){inta=177;printfi[M%o\nM,a);}(10)以下程序的輸出結(jié)果是【10】〇main(){inta=0a+=(a=8);printff%d\n”,a);(11)以下程序的輸出結(jié)果是[11]main(){inta=l,b=2;a=a+b;b=a-b;a=a-b;printf("%d,%d\n”,a,b);}(12)下列程序的輸出結(jié)果是16.00,請?zhí)羁铡?。main(){inta=9,b=2;floatx=[12] ,y=l.l,z;z=a/2+b*x/y+l/2;printfT%5.2f\n",z);(13)以下程序的輸出結(jié)果是[13]〇main(){unsignedshorta=65536;intb;printfp%d\n”,b=a);}(14)若想通過以下輸入語句使a=5.0,b=4,c=3,則輸入數(shù)據(jù)的形式應(yīng)該是[14I〇intb,c;floata;scanff%f,%d,c=%dn,&a,&b,&c);(15)若想通過以下輸入語句給a賦于1,給b賦于2,則輸入數(shù)據(jù)的形式應(yīng)該是[15]?inta,b;scanfi(,,a=%b,b=%d,&a,&b);答案:ー、選擇題1)A2)C3)B4)C5)B6)A7)D8)A9)C10)C11)B12)C13)B14)B15)D16)A17)D18)D19)D20)A21)B22)A23)C24)C25)D26)C27)28)29)30)二、填空題(1)88(2)220.000000(3)10 30 0(4)11(5)252137nl=%d\nn2=%d-3i=10j=20(9)26116(11)2,16.6(13)05.0,4,c=3a=l,b=2第4部分選擇結(jié)構(gòu)ー、選擇題(1)當把以下四個表達式用作if語句的控制表達式時,有一個選項與其它三個選項含義不同,這個選項是k%2B)k%2=lC)(k%2)!=0D)!k%2=l(2)設(shè)有定義:intk=l,m=2;floatf=7;?則以下選項中錯誤的表達式是A)k=k>=kB)-k++C)k%int(f)D)k>=f>=m(3)設(shè)有定義:inta=2,b=3,c=4;?則以下選項中值為〇的表達式是A)(!a=l)&&(!b=0)B)(a<b)&&!c||lC)a&&bD)a||(b+b)&&(c-a)(4)設(shè)變量a、b、c、d和y都己正確定義并賦值。若有以下if語句if(a<b)if(c=d)y=0;elsey=l;該語句所表示的含義是A)B)C)D)(5)有以下程序main(){inta,b,d=25;a=d/10%9;b=a&&(-l);printf("%d,%d\nu,a,b);}程序運行后的輸出結(jié)果是A)6,12,16,0D)2,0(6)有以下程序main(){inti=lj=2,k=3;if(i++=1&&(++j=31|k-H-=3))printf(H%d%d%d\nH,ij,k);}程序運行后的輸出結(jié)果是1232340223D)233(7)若x和y代表整型數(shù),以下表達式中不能正確表示數(shù)學關(guān)系|xR〈10的是A)abs(x-y)<10 B)x-y>-10&&x-y<10C)@(x-y)<-10||!(y-x)>10D)(x-y)*(x-y)<100

(8)有以下程序main(){inta=3,b=4,c=5,d=2;if(a>b)ifi[b>c)printfi[M%dM,d-H-+l);elseprintf「%d'',++d+l);printf(M%d\n",d);)程序運行后的輸出結(jié)果是A)2 B)3C)43D)44(9)下列條件語句中,功能與其他語句不同的是A)ififa)printf!"%d\n”,x);elseprintf("%d\n”,y);B)if(a=0)printff%d\n”,y);elseprintff%d\n”,x);if(a!=0)printff%d\n”,x);elseprintfC%d\n”,y);if(a=0)printff%d\n”,x);elseprintf(w%d\nH,y);(10)以下4個選項中,不能看作一條語句的是A){;}B)a=0,b=0,c=0;C)if(a>0);D)ifi(b=0)m=l;n=2;(11)以下程序段中與語句k=a>b?(b>c?l:0):0;功能等價的是A)if((a>B)&&(b>C))k=l;elsek=0;if(a<=B)k=0;A)if((a>B)&&(b>C))k=l;elsek=0;if(a<=B)k=0;elseifi[b<=C)k=l;B)if((a>B)||(b>C))k=lif(a>B)k=l;elseif([b>C)k=l;elsek=0;(12)有以下程序(12)有以下程序main(){inta=1,b=2,m=0,n=0,k;k=(n=b>a)||(m=a<b);printff%d,%d\n”,k,m);程序運行后的輸出結(jié)果是A)0,0(13)有定義語句:A)if(c<a)x=l;elseif(b<a)x=2;elsex=3;C)if(a<3)x=3;A)0,0(13)有定義語句:A)if(c<a)x=l;elseif(b<a)x=2;elsex=3;C)if(a<3)x=3;B)O,1C)1,0D)l,linta=l,b=2,c=3,x;則以下選項中各程序段執(zhí)行后,x的值不為3的是B)if(a<3)x=3;elseif(a<2)x=2;elsex=l;D)if(a<b)x=b;if(a<2)x=2; if(b<c)x=c;if(a<l)x=l; if(c<a)x=a;(14)有以下程序main(){inti=lj=l,k=2;if((j++IIk++)&&i++)printfi(M%d,%d,%d\nn,ij,k);}執(zhí)行后輸出結(jié)果是A)1,1,2 B)2,2,1C)2,2,2 D)2,2,3(15)有以下程序main(){inta=5,b=4,c=3,d=2;if(a>b>c)printf("%d\nn,d);elseif((c-l>=d)=l)printff%d\n”,d+l);elseprintff%d\n”,d+2)}執(zhí)行后輸出結(jié)果是A)2B)3C)4D)編譯時有錯,無結(jié)果(16)已有定義:intx=3,y=4,z=5;,則表達式!(x+y)+z?l&&y+z/2的值是A)6 B)0C)2 D)1(17)有一函數(shù),,以下程序段中不能根據(jù)x值正確計算出y值的是A)ifi[x>0)y=l;B)y=0;elseif(x=O)y=0; if(x>0)y=l;elsey=-l; elseif(x<0)y=-l;C)y=0; D)if(x>=0)if(x>=0); if(x>O)y=l;ifi[x>0)y=l; elsey=0;elsey=-l;elsey=-l;(18)有以下程序main(){inta=15,b=21,m=0;switch(a%3){caseO:m-H-;break;casel:m-H-;switch(b%2){default:m++;case〇:m++;break;printf("%d\n",m);}程序運行后的輸出結(jié)果是A)1 B)2 C)3 D)4(19)以下程序的輸出結(jié)果是main(){inta=5,b=4,c=6,d;printf("%d\nM,d=a>b?(a>c?a:c):(b));}A)5B)4 C)6 D)不確定(20)以下程序的輸出結(jié)果是main(){inta=4,b=5,c=0,d;d=!a&&!b||!c;printfC%d\nn,d);}A)1 B)0 C)非。的數(shù)D)-l(21)設(shè)a、b、C、d、m、n均為int型變量,且a=5、b=6、c=7、d=8、m=2、n=2?則邏輯表達式(m=a>b)&&(n=c>d)運算后,n的值位為A)0B)1 C)2D)3(22)閱讀以下程序:main(){intx;scanfif“%d",&x);if(x-<5)prints"%d”'x);elseprintfif"%d"'x-H-);}程序運行后,如果從健盤上輸人5,則輸出結(jié)果是A)3 B)4 C)5 D)6(23)假定w、x、y、z、m均為int型變量,有如下程序段:w=l;x=2;y=3;z=4;m=(w<x)?w;x;m=(m<y)?m;y; m=(m<z)?m;z;則該程序運行后,m的值是A)4 B)3 C)2 D)2(24)設(shè)x、y、t均為int型變量,則執(zhí)行語句:x=y=3;t=++x||++y;后,y的值為A)不定值 B)4 C)3D)1(25)若執(zhí)行以下程序時從鍵盤上輸入9,則輸出結(jié)果是A)11 B)10 C)9 D)8MainO{intn;scanfif“%d",&n);ifi[n++<10)printsu%d\n",n);elseprintf("%d\n”,n-);}(26)若a、b、cl>c2、x、y、均是整型變量,正確的switch語句是A)swich(a+b);B)switch(a*a+b*b){case1:y=a+b;break; {case3:caseO:y=a-b;break; case1:y=a+b;break;} case3:y=b-a,break;}C)switcha D)switch(a-b){casecl:y=a-b;break {default:y=a*b;breakcasec2:x=a*d;break case3:case4:x=a+b;breakdefault:x=a+b; case10:case11:y=a-b;break;})(27)能正確表示邏輯關(guān)系:“a2=10或a《0”的C語言表達式是A)a>=10ora<=0B)a>=0|a<=10C)a>=10&&a<=0D)a>=10IIa<=0(28)有如下程序mainO{intx=l,a=O,b=O;switch(x){case0: b-H-;a++a++;b++)print?!癮=%d,b=%d\n”,a,b);}該程序的輸出結(jié)果是A)a=2,b=1 B)a=l,b=1 C)a=l,b=OD)a=2,b=2(29)有如下程序mainO{floatx=2.0,y;if(x<0.0)y=0.0;elseif(x<10.0)y=1.0/x;elsey=1.0;printfif"%f\n",y);}該程序的輸出結(jié)果是A)0.000000B)0.250000C)0.500000D)1.000000(30)有如下程序mainO{inta=2,b=-l,c=2;if(a<b)ififbvO)c=0;elsec++prints"%d\n",c);}該程序的輸出結(jié)果是A)0 B)1 C)2 D)3(31)設(shè)intx=l,y=l;表達式(!x||y-)的值是A)0 B)1 C)2 D)-l(32)與y=(x>O?l:x〈O??l:O);的功能相同的if語句是A)if(x>O)y=l;B)if(x)elseif(x<O)y=-l;if(x>O)y=l;elsey=0;elseifi(x<O)y=-l;elsey=0;C)y=-lD)y=0;if(x)iRx>=0)if(x>O)y=l;if(x>O)y=l;elseifi(x==O)y=O;elsey="l;elsey=-l;(33)語句:printf(”%d",(a=2)&&(b=-2);的輸出結(jié)果是A)無輸出B)結(jié)果不確定C)-lD)1(34)當c的值不為〇時,在下列選項中能正確將c的值賦給變量a、b的是A)c=b=a; B)(a=c)II(b=c);C)(a=c)&&(b=c);C)a=c=b;(35)能正確表示a和b同時為正或同時為負的邏輯表達式是(a>=0IIb>=0)&&(a<0IIb<0)(a>=0&&b>=0)&&(a<0&&b<0)(a+b>0)&&(a+b<=0)D)a*b>0(36)以下程序的輸出結(jié)果是D)0 0A)-l1 B)01C)1 0D)0 0main()

inta=-1?b=l,k;if((++a<0)&&!(b-<=0))printf("%d%d\n",a,b);elseprintf("%d%d\n'\b,a);)D)4(37)以下程序輸出結(jié)果是D)4A)7 B)6 C)5main()intm=5;ifi(m++>5)prin氓"%d\n”,m);(38)當a=l,b=3,c=5,d=5時,執(zhí)行下面一段程序后,x的值為A)1 B)2 C)3 D)6iRavb)ifi(c<d)x=l;elseifi(a<c)ififbvd)x=2;elsex=3;elsex=6;elsex=7;(39)表示關(guān)系x<=y<=z的c語言表達式為A)(X<=Y)&&(Y<=Z) B)(X<=Y)AND(Y<=Z)C)(X<=Y<=Z) D)(X<=Y)&(Y<=Z)(40)有以下程序#includemain(){inta,b,c=246;a=c/100%9;b=(-l)&&(-!);printff%d,%d\n”,a,b);}輸出結(jié)果是A)2,1 B)3,2C)4,3 D)2,-1(41)設(shè)a為整型變量,不能正確表達數(shù)學關(guān)系:1010&&a>15D)!(a<=10)&&!(a>=15)(42)若有以下定義:

floatx;inta,b;則正確的floatx;inta,b;則正確的switch語句是A)switch(x){easel.0:printf("*\nM);case2.0:printf("**\n");}C)switch(a+b){casel:printf(M\nM);casel+2:printfi(n**\nH);B)switch(x){case1,2:printf("*\nM);case3:printfi[M**\nM);)D)switch(a+b);{casel:prin氓'**\n");case2:printf(M**\n");}}(43)假定所有變量均已正確說明,下列程序段運行后x的值是a=b=c=O;x=35;ifi[!a)x-;elseif(b);if(c)x=3;elsex=4;TOC\o"1-5"\h\zA)34 B)4 C)35 D)3(44)在以下ー組運算符中,優(yōu)先級最髙的運算符是A)<= B)= C)% D)&&(45)表達式:10!=9的值是A)trueB)非零值 C)0 D)1(46)在下列選項中,不正確的賦值語句是A)++t; B)nl=(n2=(n3=0));C)k=i『j; D)a=b+c=l;(47)能正確表示10或aく0的關(guān)系表達式是A)a>=10ora<=0 B)a>=10|a<=0C)a>=10IIa<=0 D)a>=10||a<=0(48)為表示關(guān)系x2y2z,應(yīng)使用C語言表達式A)(x>=y)&&(y>=z)B(x>=y)AND(y>=z)C)(x>=y>=z) D)(x>=y)&(y>=z)(49)兩次運行下面的程序,如果從鍵盤上分別輸入6和4,則輸出結(jié)果是main(){intx;scanf("%d”,&x);if(x++>5)printff%d”,x);else primfT%d\iT,x--);A)7和5 B)6和3 C)7和4D)6和4(50)以下程序的輸出結(jié)果是main(){inta=-1,b=4,k;k=(++a<0)&&!(b--<=0);printf("%d%d%d\nM,k,a,b);}A)104 B)103 C)003 D)004(51)下面的程序A)有語法錯誤不能通過編譯B)輸出?***。C)可以通過編譯,但是不能通過連接,因而不能運行。D)輸出####。main(){intx=3,y=0,z=0;if(x=y+z)printf(M*?**”);else printff'####");}(52)若執(zhí)行下面的程序時從鍵盤上輸入5,則輸出是A)7 B)6 C)5 D)4main(){intx;scanf(H%dn,&x);iRx++>5)printfi(n%d\nn,x);else printグ%d\n”,x-);}(53)下面程序的輸出是A)003 B)012 C)103 D)112main(){inta=-l,b=4,k;k=(a++<=0)&&(!(b—<=0));printf("%d%d%d\n”,k,a,b);}(54)下面的程序片段所表示的數(shù)學函數(shù)關(guān)系是上面程序片段的輸出結(jié)果是r-l(x<0)Ir1(x<0)I1A)y=T0(x=0)IiB)y=T-1(x=0)IIL1(x>0)iL0(x>0)r0(x<0)1r-l(x<0)IiC)y=H-1(x=0)IiD)y=T1(x=0)I1L1(x>0)y=-i;if(x!=0)if(x>0)y=l;elsey=01L0(x>0)(55)卜面程序的輸出是A)-l B)0 C)1 D)不確定的值main(){intx=100,a=10,b=20,ok1=5,ok2=0;if(a<b)if(b!=15)if(!okl)x=l;elseif(ok2)x=10;x=-l;printfC%d\nH,x);}(56)設(shè)a、b和c都是int型變量,且a=3,b=4,c=5,則下面的表達式中,值為〇的表達式是A)'a'&&'b'B)a<=bC)a||b+c&&b-cD)!((a<b)&&!c||l)(57)請讀程序:#include<stdio.h>main(){floatx,y;scan(M%f\&x);if(x<0.0)y=0.0elseif((x<5.0)&&(x!=2.0))y=1.0/(x+2.0);elseif(x<10.0)y=1.0/x;elsey=10.0;printfC%f\n”,y);}若運行時從鍵盤上輸入2.0vCR>(〈CR>表示回車),則上面程序的輸出結(jié)果是A)0.000000B)0.250000C)0.500000D)1.000000(58)請讀程序:#include<stdio.h>main(){intx=l,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;case1:b++;break;case2:a++;b-H-;break;}printff'a=%d,b=%d\nM,a,b);}上面程序的輸出結(jié)果是A)a=2,b=lB)a=l,b=lC)a=l,b=0D)a=2,b=2(59)以下程序的輸出結(jié)果是 【59】〇#include<stdio.h>main(){inta,b,d=241;a=d/100%9;b=(-l)&&(-l);printf("%d,%d\nM,a,b);}A)6,1B)2,1C)6,0D)2,0(60)若k是int型變量,且有下面的程序片段:k=-3if(k<=0)printfifM####H)elseprintff&&&&”);上面程序片段的輸出結(jié)果是A)####B)&&&&C)####&&&&D)有語法錯誤,無輸出結(jié)果二、填空題(1)以下程序運行后的輸出結(jié)果是 【1】〇main(){inta=l,b=2,c=3;iRc=a)printff%d\n”,c);elseprintf("%d\nM,b);}(2)以下程序運行后的輸出結(jié)果是main(){inta=3,b=4,c=5,t=99;ifi(b<a&&a<c)t=a;a=c;c=t;if(a<c&&b<c)t=b;b=a;a=t;printf(M%d%d%d\nn,a,b,c);}(3)以下程序運行后的輸出結(jié)果是main(){inta,b,ca=10;b=20;c=(a%b<l)||(a/b>1);printff%d%d%d\nn,a,b,c);(4)以下程序運行后的輸出結(jié)果是[4】。main(){intx=l,y=O,a=O,b=O;switch(x){casel:switch(y){caseO:a-H-;break;casel:b-H-;break;case2:a++;b++;break;}prin氓"%d%d\n",a,b);}(5)有以下程序main(){intn=O,m=l,x=2;if(!n)x-=l;x-=2;if(x)x-=3;print出"%d\n",x);}執(zhí)行后輸出結(jié)果是【5】〇(6)以下程序運行后的輸出結(jié)果是 【6】〇main(){intp=30;printf("%d\n”,(p/3>0?p/10:p%3));}(7)以下程序運行后的輸出結(jié)果是【7】〇main(){inta=l,b=3,c=5;if(c=a+b)printf(Hyes\nH);elseprintffnoW");}(8)若有以下程序main(){intp,a=5;if(p=a!=0)printff%d\n”,p);elseprintfi(n%d\n,,,p+2);執(zhí)行后輸出結(jié)果是【8】〇(9)若有以下程序main(){inta=4,b=3,c=5,t=0;if(a<b)t=a;a=b;b=t;if(a<c)t=a;a=c;c=t;printf(M%d%d%d\nM,a,b,c);}執(zhí)行后輸出結(jié)果是【9】〇(10)以下程序運行后的輸出結(jié)果是 [10]〇main(){intx=10,y=20,t=0;iRx=y)t=x;x=y;y=t;printfif"%d,%d\n”,x,y);}(11)若從鍵盤輸入58,則以下程序輸出的結(jié)果是[11]〇main(){inta;scanf(H%d",&a);if(a>50)printf(H%dH,a);if(a>40)print吋%d”,a);if(a>30)printf(H%dM,a);)(12)以下程序輸出的結(jié)果是【12】〇main(){inta=5,b=4,c=3,d;d=(a>b>c);printfC%d\n",d);)(13)設(shè)y是int型變量,請寫出判斷y為奇效的關(guān)系表達[13].(14)表示“整數(shù)x的絕對值大于5”時值為“真”的C語言表達式是【14】?(15)若x為int類型,請以最簡單的形式寫出與邏輯表達式!x等價的C語言關(guān)系表達式【15】。(16)表示條件:10<x<100或者說x<0的C語言表達式是【16】。(17)條件“20<x<30或xc-100”的C語言表達式是【17】。答案:ー、選擇題D2)C3)A4)C5)B6)D7)C8)A9)D10)DA12)C13)C14)C15)B16)D17)C18)A19)C20)A21)C22)B23)D24)C25)B26)D27)D28)A29)C30)C31)B32)A33)D34)C35)D36)C37)B38)B39)A40)A41)A42)C43)B44)C45)D46)D47)D48)A49)A50)D51)D52)B53)C54)C55)A56)D57)C58)A59)B60)D二、填空題(1)1(2)4599(3)10200(4)21(5)-4(6)3⑺yes(8)150320,0585858(12)0(13)(y%2)!==l或y%2或(y%2)!=0x>5||x<-5x=0||x=l(16)(x>10&&x<100)IIx<0或(1010&&x<100)或〇>x||(10<&&x<100)(并且括號有無都可以)((20<x)&&(x<30))||(x<-100)或20<x&&x<30||x<-100第5部分循環(huán)結(jié)構(gòu)ー、選擇題(1)有以下程序段intn,t=l,s=O;scanf(M%du,&n);do{s=s+t;t=t-2;}while(t!=n);為使此程序段不陷入死循環(huán),從鍵盤輸入的數(shù)據(jù)應(yīng)該是A)任意正奇數(shù)B)任意負偶數(shù)C)任意正偶數(shù)D)任意負奇數(shù)(2)設(shè)變量已正確定義,則以下能正確計算f=n!的程序段是A)f^O; B)f=l;fbr(i=1;i<=n;i++)f*=i; fbr(i=1;i<n;i++)f*=i;C)fH; D)f=l;fbr(i=n;i>1;i++)f*=i; fbr(i=n;i>=2;i—)f*=i;(3)有以下程序main(){intk=5,n=0;while(k>0){switch(k){default:break;:n+=k;::n+=k;}k一;}printHM%d\n",n);}程序運行后的輸出結(jié)果是A)0 B)4 C)6 D)7(4)有以下程序main(){inta=l,b;for(b=l;b<=10;b++)(if(a>=8)break;ifi(a%2=l){a+=5;continue;}a-=3;}printfC%d\n”,b);)程序運行后的輸出結(jié)果是A)3B)4C)5D)6(5)有以下程序main(){ints=0,a=l,n;scanf(”%d”,&n);do{s+=l; a=a-2;}while(a!=n);printfC%d\nH,s);)若要使程序的輸出值為2,則應(yīng)該從鍵盤給n輸入的值是A)-lB)-3C)-5 D)0(6)若有如下程序段,其中s、a、b、c均已定義為整型變量,且a、c均已賦值(c大于0)s=a;fbr(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)有以下程序main(){intk=4,n=4;fbr(;n<k;){n++;iRn%3!=0)continue;k—;)printf(M%d,%d\nM,k,n);)程序運行后的輸出結(jié)果是A)1,1 B)2,2 C)3,3D)4,4(8)要求以下程序的功能是計算:main(){intn;floats;s=1.0;fbr(n=10;n>l;n-)s=s+l/n;print(H%6.4f\nn,s);}程序運行后輸出結(jié)果錯誤,導致錯誤結(jié)果的程序行是A)s=1.0; B)for(n=10;n>1;n-)C)s=s+l/n; D)printf(H%6.4f7nM,s);(9)有以下程序main(){inti;fbr(i=0;i〈3;i++)switch(i){casel:printfC%dn,i);case2:printf(M%dH,i);default:printf("%d",i);})執(zhí)行后輸出結(jié)果是A)011122 B)012C)012020D)120(10)有以下程序main(){inti=0,s=0;do{if(i%2){i-H-;continue;}ifs+=i;}while(i<7);printfif'%d\n",s);)執(zhí)行后輸出結(jié)果是A)16B)12C)28D)21(11)以下程序的功能是:按順序讀入10名學生4門課程的成績,計算出每位學生的平均分并輸出,程序如下:main(){intn,k;floatscore,sum,ave;sum=0.0;fbr(n=l;n<=10;n++){ fbr(k=l;k<=4;k-w-){scanf("%f”,&score);sum+=score;}ave=sum/4.0;prints"NO%d:%f\n”,n,ave);})上述程序運行后結(jié)果不正確,調(diào)試中發(fā)現(xiàn)有一條語句出現(xiàn)在程序中的位置不正確。這條語句是sum=0.0; B)sum+=score;C)ave=sun/4.0;D)prirHf("NO%d:%f\n”,n,ave);(12)有以下程序段intn=0,p;do{scanf("%d”,&p);n++;}while(p!=12345&&n<3);此處do一while循環(huán)的結(jié)束條件是A)P的值不等于12345并且n的值小于3P的值等于!2345并且n的值大于等于3〇P的值不等于12345或者n的值小于3D)P的值等于12345或者n的值大于等于3(13)以下程序中,while循環(huán)的循環(huán)次數(shù)是main(){inti=0;while(i<10){ continue;if(I=5)break;i卄;A)1 B)10C)6 D)死循環(huán),不能確定次數(shù)(14)以下程序的輸出結(jié)果是main(){inta=0,i;fbr(i=;i<5;i++){switch(i){case0:case3:a+=2;case1:case2:a+=3;default:a+=5;}}printf("%d\n",a);}A)31B)13C)10D)20(15)以下程序的輸出結(jié)果是#include<stdio.h>main(){inti=0,a=0;while(i<20){for(;;){if((i%10)=0)break;else i—;a+=i;printh(M%d\nM,a);}A)21 B)32C)33 D)11t為int類型,進人下面的循環(huán)之前,t的值為Owhile(t=l)則以下敘述中正確的是A)循環(huán)控制表達式的值為〇B)循環(huán)控制表達式的值為!C)循環(huán)控制表達式不合法 D)以上說法都不對(17)以下程序的輸出結(jié)果是main(){intnum=0;while(num<=2){num卄;printfi["%d\n",num);}TOC\o"1-5"\h\zA)1 B)1 C)1 D)12 23(18)以下程序的輸出結(jié)果是main(){inta,b;fbr(a=l,b=l;a<=100;a++){ if(b>=10)break;if(b%3==l){ b+=3;continue;})print]"%d\n”,a);)A)101 B)6 C)5 D)4(19)有以下程序段intk=0while(k=l)k++;while循環(huán)執(zhí)行的次數(shù)是A)無限次B)有語法錯,不能執(zhí)行C)一次也不執(zhí)行D)執(zhí)行1次

(20)以下程序執(zhí)行后sum的值是A)15 B)14C)不確定 D)0min(){inti,sum;fbr(i=l;i<6;i++)sum+=i;printfi["%d\n”,sum);)(21)有以下程序段intx=3do{printfi("%d",x=2); }while(!(-x));其輸出結(jié)果是A)中1 B)30C(22)有如下程序mainO{inti,sum;fbr(i=l;iv=3;sum++)sum+=i;prints"%d\n",sum);:)1-2D)死循環(huán)J該程序的執(zhí)行結(jié)果是A)6 B)3(23)有如下程序mainO{intx=23;do{prints"%d”,x-);}while(!x);\C)死循環(huán)D)0i該程序的執(zhí)行結(jié)果是A)321 B)23(24)有如下程序mainO{ intn=9;while(n>6){n—;printf("%d",n);}セC)不輸出任何內(nèi)容D)陷入死循環(huán)該程序段的輸出結(jié)果是A)987 B)876(25)以ド循環(huán)體的執(zhí)行次數(shù)是C)8765D)9876B)2D)0A)3main(){inti,j;B)2D)0fbr(i=OJ=l;i<=j+l;i+=2,j-)printfC%d\n",i);)(26)以下敘述正確的是A)do-while語句構(gòu)成的循環(huán)不能用其它語句構(gòu)成的循環(huán)來代替。B)do-while語句構(gòu)成的循環(huán)只能用break語句退出。C)用do-while語句構(gòu)成的循環(huán),在while后的表達式為非零時結(jié)束循環(huán)。D)用do-while語句構(gòu)成的循環(huán),在while后的表達式為零時結(jié)朿循環(huán)。(27)以下程序段的執(zhí)行結(jié)果是A)a=12y=12 B)a=12y=12a=14y=16 a=16y=28a=16y=20a=18y=24C)a=12y=12 D)a=12y=12a=14y=26a=14y=44inta,y;a=10;y=0;do{a+=2;y+=a;printf(Ha=%dy=%d\nH,a,y);if(y>20)break;{while(a=14);(28)以下程序的輸出結(jié)果是A)10192B)9876C)10990D)101091main(){intx=10,y=10,I;for(i=0;x>8;y=++i)printff%d,%d”,x—,y);)(29)以下程序的輸出結(jié)果是A)20 B)31 C)321D)210main(){intn=4;while(n—)printf(H%d**,—n);(30)以ド程序的輸出結(jié)果是

A)#*#*#B)#####main(){inti;fbr(i=l;i<6;i++){ iRi%2){prin氓“#");prin氓“*");continue;}D)*#*#*(31)執(zhí)行以下程序段時A)循環(huán)體將執(zhí)行一次C)循環(huán)體將執(zhí)行無限次X=-l;do{x=x*x;B)循環(huán)體將執(zhí)行兩次D)continue;}D)*#*#*(31)執(zhí)行以下程序段時A)循環(huán)體將執(zhí)行一次C)循環(huán)體將執(zhí)行無限次X=-l;do{x=x*x;B)循環(huán)體將執(zhí)行兩次D)系統(tǒng)將提示有語法錯誤while(!x);(32)執(zhí)行以下程序后,輸出的結(jié)果是A)-l B)1 C)8 D)0main(){inty=10;do{y-while(--y);printff%d\n”,y—);}(33)在下列選項中,沒有構(gòu)成死循環(huán)的程序段是A)inti=100 B)fbr(;;);while(l){i=i%100+1;if(i>100)break;C)intk=1000;D)ints=36;while(s);—s;do{++k;}while(k>=10000);(3

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論