C語言基礎(chǔ)練習(xí)題_第1頁
C語言基礎(chǔ)練習(xí)題_第2頁
C語言基礎(chǔ)練習(xí)題_第3頁
C語言基礎(chǔ)練習(xí)題_第4頁
C語言基礎(chǔ)練習(xí)題_第5頁
已閱讀5頁,還剩49頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第一章C語言基礎(chǔ)知識(shí).._ok?_buy2a.\0while1.1選擇題.以下不是C語言的特點(diǎn)的是()A語言簡(jiǎn)潔緊湊B、能夠編制出功能復(fù)雜的程序CC語言可以直接對(duì)硬件操作D、C語言移植性好TOC\o"1-5"\h\z.下列字符序列中,不可用作C語言標(biāo)識(shí)符的是()。Aabc123BC._123_D.正確的C語言標(biāo)識(shí)符是()。A._buy_2B.2_buyC.Dbuy?.請(qǐng)選出可用作C語言用戶標(biāo)識(shí)符的一組標(biāo)識(shí)符()。AvoidBa3_b3C.ForDdefine_123-abcDOWORDIFCasesizeof.下列符號(hào)中,不屬于轉(zhuǎn)義字符的是()。A\\B.\0xAAC.\tD.不屬于C語言關(guān)鍵字的是()。A.intB.breakC.Dcharacter.是C語言提供的合法關(guān)鍵字的是()。AFloatBsignedCintegerD.Char.以下不能定義為用戶標(biāo)示符的是()。A.scanfB.VoidC._3comD.int9.一個(gè)C程序是由()。一個(gè)主程序和若干子程序組成一個(gè)或多個(gè)函數(shù)組成若干過程組成D.若干子程序組成10.C語言程序的基本單位是()。A.程序行B.語句C.函數(shù)D.字符11.下列說法中,錯(cuò)誤的是()。A.每個(gè)語句必須獨(dú)占一行,語句的最后可以是一個(gè)分號(hào),也可以是一個(gè)回車換行符號(hào)B.每個(gè)函數(shù)都有一個(gè)函數(shù)頭和一個(gè)函數(shù)體,主函數(shù)也不例外C.主函數(shù)只能調(diào)用用戶函數(shù)或系統(tǒng)函數(shù),用戶函數(shù)可以相互調(diào)用D.程序是由若干個(gè)函數(shù)組成的,但是必須有、而且只能有一個(gè)主函數(shù)12.以下說法中正確的是()。A.C語言程序總是從第一個(gè)定義的函數(shù)開始執(zhí)行B.在C語言程序中,要調(diào)用的函數(shù)必須在main()函數(shù)中定義C語言程序總是從main()函數(shù)開始執(zhí)行C語言程序中的main()函數(shù)必須放在程序的開始部分13.C編譯程序是()。C程序的機(jī)器語言版本一組機(jī)器語言指令C.將C源程序編譯成目標(biāo)程序D.由制造廠家提供的一套應(yīng)用軟件.以下選項(xiàng)中,合法的用戶標(biāo)識(shí)符是()。A.longB._2abcC.3dmaxD..以下選項(xiàng)中,合法的實(shí)型常數(shù)是()。A.B?E-3C.2E0D..已知大寫字母A的ASCII碼值是65,小寫字母a的ASCII碼是97,則用八進(jìn)制表示的字符常量‘\101'是()。A.字符AB.字符aC.字符cD.非法的常量.以下選項(xiàng)中,合法轉(zhuǎn)義字符的選項(xiàng)是()。A.,,B.''018'C.'xab'D.'\abc'.以下選項(xiàng)中,正確的字符常量是()。A"F"b.'''C'WD.''.以下選項(xiàng)中可作為C語言合法整數(shù)的是A.10110BB.0386C.0XffaD,x2a2.下列變量定義中合法的是short_a=;doubleb=1+;longdo=0xfdaL;float2_and=1-e-3;.與數(shù)學(xué)式子對(duì)應(yīng)的C語言表達(dá)式是()。2x1A.9*xAn/(2*x-1)B.9*x**n/(2*x-1)9*pow(x,n)*(1/(2*x-1))9*pow(n,x)/(2*x-1)22.若有代數(shù)式迪,則不正確的C語言表達(dá)式是()。cd

3*a*b/c/da*b/d/c*3.3*a*b/c/da*b/d/c*3.n=n*3=18

y=float(m)C.3*a*b/c*d已知各變量的類型說明如下:intm=8,n,a,b;unsignedlongw=10;doublex=,y=;則以下符合C語言語法的表達(dá)式是(A.a(chǎn)+=a-=(b=2)*(a=8)BC.x%324.以下符合C語言語法的賦值表達(dá)式是()。A.a(chǎn)=9+b+c=d+9B.a(chǎn)=(9+b,c=d+9)C.a(chǎn)=9+b,b++,c+9D.a(chǎn)=9+b++=c+925.已知字母A的ASCII碼為十進(jìn)制數(shù)65,且S為字符型,則執(zhí)行語句S=’A’+’6’-’3’;后,S中的值為()。TOC\o"1-5"\h\zA.’D’B.68C.不確定的值D.’C’.在C語言中,要求運(yùn)算數(shù)必須是整型的運(yùn)算符是()。A./B.++C.*=D.%.若有說明語句:chars=’\72’;則變量s()。A.包含一個(gè)字符B.包含兩個(gè)字符C.包含三個(gè)字符D.說明不合法,s的值不確定28.若有定義:intm=7;floatx=,y=;則表達(dá)式x+m%3*(int)(x+y)%2/4的值是()。A.B.C.D..在C語言中,char型數(shù)據(jù)在內(nèi)存中的存儲(chǔ)形式是()。A.補(bǔ)碼B.反碼C.原碼D.ASCII碼.設(shè)變量x為float類型,m為int類型,則以下能實(shí)現(xiàn)將x中的數(shù)值保留小數(shù)點(diǎn)后兩位,第三位進(jìn)行四舍五入運(yùn)算的表達(dá)式是()。A.x=(x*100+/B.m=x*100+,x=m/C.x=x*100+D.x=(x/100+*31.表達(dá)式13/3*sqrt/8的數(shù)據(jù)類型是()。A.intB.floatC.doubleD.不確定32.設(shè)以下變量均為int類型,則值不等于7的表達(dá)式是()。A.(m=n=6,m+n,m+1)B.(m=n=6,m+n,n+1)C.(m=6,m+1,n=6,m+n)D.(m=6,m+1,n=m,n+1)33.假設(shè)所有變量均為整型,則表達(dá)式(x=2,y=5,y++,x+y)的值是()。A.7B.8C.6D.234.已知s是字符型變量,下面不正確的賦值語句是()。A.s=’012’;B.s=‘u+v’;C.s=’1’+’2’;D.s=1+2;.已知s是字符型變量,下面正確的賦值語句是()。A.s=*’abc’;s=’08’;C.s=’xde’;D.s=””;.若有以下定義,則正確的賦值語句是()。intx,y;floatz;A.x=1,y=2,B.x=y=100C.x++;D.x=int(z);.設(shè)x、y均為float型變量,則不正確的賦值語句是()。A.++x;B.x*=y-2;C.y=(x%3)/10;D.x=y=0;.下列語句中符合C語言的賦值語句是()。A.a(chǎn)=7+b+c=a+7;B.a(chǎn)=7+b++=a+7;C.a(chǎn)=7+b,b++,a+7D.a(chǎn)=7+b,c=a+7;39.putchar函數(shù)可以向終端輸出一個(gè)()。A.整型變量表達(dá)式值。B.字符串C.實(shí)型變量值。D,字符或字符型變量值。40.以下程序段的輸出結(jié)果是()。inta=12345;printf(”%2dn”,a);A.12B.34C.12345D.提示出錯(cuò)、無結(jié)果41.若x和y均定義為int型,z定義為double型,以下不合法的scanf()函數(shù)調(diào)用語句為()。A.scanf(”%d%lx,%le”,&x,&y,&z);B.scanf(”%2d*%d%lf”,&x,&y,&z);C.scanf(”%x%*d%”o,&x,&y);D。scanf(”%x%o”%,&x,&y,&z);42.有如下程序段:intx1,x2;chary1,y2;scanf(”%d%c%d%”,c&x1,&y1,&x2,&y2);若要求x1、x2、y1、y2的值分別為10、20、AB,正確的數(shù)據(jù)輸入是()。(注:」代表空格)10A20B10A20B10-A」20-B10A20-B43.若變量已正確說明為float類型,要通過語句scanf(”%f%f%f”,&a,&b,&c);給a賦予,b賦予,c賦予,不正確的輸入形式為()。A.10<回車>B.,,<回車>22<回車>33C.<回車>D.1022<回車><回車>33<回車>44.有如下程序,若要求x1、x2、y1、y2的值分別為10、20、A、B,正確的數(shù)據(jù)輸入是()。(注:」代表空格)intx1,x2;chary1,y2;scanf(”%d%”,d&x1,&x2);scanf(”%c%”c,&y1,&y2);A.1020ABB.10-20-ABCC10-20D.10」」20ABAB45.已有定義inta=-2;和輸出語句:printf(”%8lx”,a);以下正確的敘述是()。A,整型變量的輸出格式符只有%d一種%x是格式符的一種,它可以適用于任何一種類型的數(shù)據(jù)%x是格式符D.%8lx不是錯(cuò)誤的格式符,其中數(shù)字8規(guī)定了輸出字段的寬度46.有如下程序段,對(duì)應(yīng)正確的數(shù)據(jù)輸入是()。floatx,y;scanf(”%f%f”,&x,&y);printf(”a=%f,b=%f”,x,y);A.<回車>B.,<回車><回車>C.A=,B=VU車>D.回車>47.有如下程序段,從鍵盤輸入數(shù)據(jù)的正確形式應(yīng)是()。(注:」代表空格)floatx,y,z;scanf(“x=%d,y=%d,z=%”d,&a,&y,&z);A.123B.x=1,y=2,z=3C.1,2,3D,x=「y=2-z=348.以下說法正確的是()。A.輸入項(xiàng)可以為一個(gè)實(shí)型常量,如scanf(%f',;B.只有格式控制,沒有輸入項(xiàng),也能進(jìn)行正確輸入,如scanf(”a=%d,b=5d”);C.當(dāng)輸入一個(gè)實(shí)型數(shù)據(jù)時(shí),格式控制部分應(yīng)規(guī)定小數(shù)點(diǎn)后的位數(shù),如scanf(”%”,&f);D.當(dāng)輸入數(shù)據(jù)時(shí),必須指明變量的地址,如scanf(”%f”,&f);49.根據(jù)定義和數(shù)據(jù)的輸入方式,輸入語句的正確形式為:()。(注:」代表空格)已有定義:floatx,y;數(shù)據(jù)的輸入方式:<回車><回車>A.scan(”%f,%f”,&x,&y);B.scanf(”%f%f”,&x,&y);C.scanf("%一%,&x,&y);D.scanf(”%%”,&x,&y);50.根據(jù)下面的程序及數(shù)據(jù)的輸入和輸出形式,程序中輸入語句的正確形式應(yīng)該為()。

#includemain(){chars1,s2,s3;輸入語句;printf(”%c%c%”c,s1,s2,s3);(注:「代表空}(注:「代表空輸入形式:A-B-C姻車>格)輸出形式:A」BA.scanf(”%c%c%”c,&s1,&s2,&s3);scanf("%c-%c%c,&s1,&s2,&s3);C.scanf(”%c,%c,%c”,&s1,&s2,&s3);D.scanf(”%c%”c,&s1,&s2,&s3);51.以下程序的執(zhí)行結(jié)果是:()。#includemain(){intx=2,y=3;printf(”x=%%d,y=%%nd”,x,y);}A.x=%2,y=%3B.x=%%d,y=%%dx=2,y=3D.x=%d,y=%d.以下程序的輸出結(jié)果是()。(注:「代表空格)main(){printf(”nstring1=%15s*”,”programming”);printf(”\nstring2=%-5s*”,”boy”);printf(”string3=%2s*”,”girl”);}string1=programming」」」」*string1=匚--programming*string2=boy*string2=boy--*string3=gi*string3=gi*string1=programming」」」」*string1=1—11—11—11—1programming*string2=1-11―1boy*string3=girl*string2=boy1―11-1*string3=girl*.根據(jù)題目中已給出的數(shù)據(jù)的輸入和輸出形式,程序中輸入輸出語句的正確內(nèi)容是()#includemain(){inta;floatb;輸入語句輸出語句}輸入形式:1」<回車>(注:-代表空格)輸出形式:a+b=A.scanf(%d%f,&a,&b);B.scanf(%d%,&a,&b);printf(“na+b=%,a+b);printf("na+b=%f,a+b);Cscanf("%d,%f,&a,&b);D.scanf("%d%f,&a,&b);printf("na+b=%,a+b)printf("na+b=%f,a+b);54.閱讀以下程序,當(dāng)輸入數(shù)據(jù)的形式為:12,34,正確的輸出結(jié)果為()。#includemain(){inta,b;scanf("%d%d,&a,&b);printf("a+b=%dn”,a+b);}A.a+b=46B.有語法錯(cuò)誤C.a+b=12D.不確定值55.若有定義:intx,y;chars1,s2,s3;并有以下輸出數(shù)據(jù):(注:」代表空格)-2<回車>U-V-W粗車〉則能給x賦給整數(shù)1,給y賦給整數(shù)2,給s1賦給字符U,給s2賦給字符V,2s3賦給字符W的正確程序段是()。A.scanf("x=%dy=%d,&x,&y);s1=getchar();s2=getchar();s3=getchar();B.scanf("%d%d,&x,&y);s1=getchar();s2=getchar();s3=getchar();scanf("%d%d%c%C%,&x,&y,&s1,&s2,&s3);scanf("%d%d%c%c%c%c%c&xc&y,&s1,&s1,&s2,&s2,&s3,&s3);1.2填空題.C語言的符號(hào)集包括_英文學(xué)母、數(shù)字、一些有特定含義的標(biāo)點(diǎn)符號(hào).結(jié)構(gòu)化設(shè)計(jì)中的三種基本結(jié)構(gòu)是_順序結(jié)構(gòu)、詵擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu).C語言源程序文件的后綴是一屋,經(jīng)過編譯后生成文件的后

綴是OB4經(jīng)過鏈接后生成文件的后綴是EXEo.C語言的關(guān)鍵字都用小寫{大寫或小寫}。.一個(gè)函數(shù)由兩部分組成,它們是函數(shù)說明部分和函數(shù)體。.函數(shù)體一般包括變量定義部分和執(zhí)行部分。.C語言是通過輸入輸出函數(shù)來進(jìn)行輸入和輸出的。.以下程序的執(zhí)行結(jié)果dec:-1,oct:177777,hex:ffff,unsigned:65535dec:1,oct:1,hex:1,unsigned:1o#includemain()■■■?、

■■■?、

,i,i,i,i);printf("dec:%dprintf("dec:%d,oct:%o,hex:%x,unsigned:%un”,j,j,j,j);}.以下程序的執(zhí)行結(jié)果dec:98,oct:142,hex:62,ASCII:b#includemain(){chars='b';printf("dec:%d,oct:%o,hex:%x,ASCII:%cn",s,s,s,s);}.以下程序的執(zhí)行結(jié)果是+00,+00,+00,——+00。(注:」代表空格)#include

main(){floatpi=;printf("%f,%.4f,%,%",pi,pi,pi,pi);printf("\n%e,%.4e,%,%',pi,pi,pi,pi);}.以下程序的執(zhí)行結(jié)果是:'c,+5;'c,+5;c=%cn”,c);{charc=printf("}.以下程序輸入1—2-3后的執(zhí)行結(jié)果是i=1,k=,=2。(注:」代表空格)#includemain(){inti,j;chark;scanf("%d%c%d,&i,&k,&j);printf("i=%d,k=%c,j=%dn”,i,k,j);}.有以下程序,若輸入10后的執(zhí)行結(jié)果是;若輸入為:76-543210后的執(zhí)行結(jié)果是;若輸入為:987654—3210為:987654—3210后的執(zhí)行結(jié)果為:代表空格)#includemain(){intx1,x2;chary1,y2;

scanf("%2d%3d%3c%c&x1,&x2,&y1,&y2);printf("x1=%d,x2=%d,y1=%c,y2=%cn”,x,y);}.若x和y均為int型變量,則以下語句的功能是。x+=y;y=x-y;x-=y;.有一輸入函數(shù)scanf("%d,k);則不能使float類型變量k得到正確數(shù)值的原因是:。16?有如下程序段,輸入數(shù)據(jù):12345ffl678后、u的值是【1】,v的值是⑵。intu;floatv;scanf("%3d%f,&u,&v);1.3答案及部分解析選擇題答案1?B2,B3.A4.B5.B6.D7.B8,D9.B10.C11.A12.C13.C 14.B13.C 14.BCC 20.ABA 26.DBC 32.CCC 38.D42.A15. C 16. A 17. A21. C 22. C 23, A27. A 28. A 29, D33. B 34. B 35. C39. D 40. C 41. D43.B44.D45.D46.A47.B48.D49.B50.A51.D52.D53.A54.D55.D.解析:C語言規(guī)定標(biāo)識(shí)符只能由字母、數(shù)字和下劃線三種字符組成,且第一個(gè)字符必須為字母或下劃線。而且不能與C語言規(guī)定的關(guān)鍵字同名。關(guān)鍵字如:auto,break,case,char,const,continue,default,do,double,else,entry,extern,for,float,goto,if,int,int,long,register,return,short,signed,sizeof,static,struct,unsigned,while,switch,typedef,void,volatile,unior。這些關(guān)鍵字先不必硬背下來,隨著后續(xù)的學(xué)習(xí),你將發(fā)現(xiàn)它們都是一些數(shù)據(jù)的類型、語句等,自然會(huì)隨著學(xué)習(xí)的深入,而記下來。.解析:用指數(shù)形式表示一個(gè)實(shí)型常數(shù)時(shí),E或e之前必須有數(shù)字,且E后面指數(shù)必須為整數(shù)。.解析:’\101’為轉(zhuǎn)義字符,相對(duì)應(yīng)一個(gè)ASCII碼字符。(101)8=(65)10=A..解析:轉(zhuǎn)義字符的特征是以“”開頭,其后跟一些字符,如’”,\b,\f等代表一些特殊的含義,而后如跟數(shù)字,可以為八進(jìn)制或者十六進(jìn)制,將其轉(zhuǎn)換為對(duì)應(yīng)的ASCII碼值,就可以得出對(duì)應(yīng)的字符?!啊焙蟾诉M(jìn)制的寫法:\0nn,或者\(yùn)nn,表示“\0”或者“”后只能跟1或3位0——7之間的數(shù)字;“”后跟十六進(jìn)制的寫法:\xnn,或者\(yùn)nn,表示“\x”或者“”后只能跟1或2位0——9及a——f(A——F)之間的字符。選項(xiàng)B的錯(cuò)誤在于8不是八進(jìn)制;而選項(xiàng)C的錯(cuò)誤在于沒有“”;選項(xiàng)D的錯(cuò)誤在于超長(zhǎng)(多了一位)。21解析:B的錯(cuò)誤在于賦值語句的左側(cè)只能為一個(gè)簡(jiǎn)單變量,如:n=3*(n=18);C的錯(cuò)誤在于%運(yùn)算符只能適用于整型數(shù)據(jù),D的錯(cuò)誤在于作類型轉(zhuǎn)換時(shí),應(yīng)將類型加上括號(hào),即為:y=(float)m31.解析:逗號(hào)表達(dá)式的最終結(jié)果為最右端的表達(dá)式(即x+y)的值,其運(yùn)算順序是從左自右的。第三個(gè)表達(dá)式y(tǒng)++,其隱含有兩步操作:先取y的原值,再執(zhí)行y=y+1運(yùn)算;而本題中,雖然沒有將y賦給某個(gè)變量(取其原值),但還是一定會(huì)執(zhí)行加運(yùn)算的。因而,經(jīng)過第三個(gè)表達(dá)式,y已經(jīng)自加為6,故x+y的值為8,相對(duì)應(yīng)得表達(dá)式最終結(jié)果為8。若本題改為:(x=2,y=5,z=y++,x+z),則其結(jié)果應(yīng)為7。二填空題答案答案:英文字母、數(shù)字、一些有特定含義的標(biāo)點(diǎn)符號(hào)答案:順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)答案:C,OBJ,EXE答案:小寫答案:函數(shù)說明部分和函數(shù)體答案:變量定義部分和執(zhí)行部分答案:輸入和輸出函數(shù)答案:dec:-1,oct:177777,hex:ffff,unsigned:65535dec:1,oct:1,hex:1,unsigned:1答案:dec:98,oct:142,hex:62,ASCII:b.答案:,,,一一一一一+00,+00,+00,--+00(注:由于c編譯系統(tǒng)不同,我們上機(jī)使用的機(jī)器,其第二個(gè)printf語句實(shí)際結(jié)果為:+00,+00,+00,-+00,即:小數(shù)點(diǎn)后取5位。).答案:c=h.答案:i=1,k=,j=213.答案:第一種情況的執(zhí)行結(jié)果:x1=98,x2=765,y1=4,y2=1第二種情況的執(zhí)行結(jié)果:x1=98,x2=76,y1=」,y2=3第三種情況的執(zhí)行結(jié)果:x1=98,x2=765,y1=4,y2=2.答案:交換x和y的值.答案:(1)格式符應(yīng)為:%f;(2)變量前邊未加取地址符&,即應(yīng)為scanf(”%f”,&k);TOC\o"1-5"\h\z.答案:【1】123【2】第二章選擇結(jié)構(gòu)1選擇題已有定義:intx=3,y=4,z=5;則表達(dá)式!(x+y)+z-1&&y+z/2的值是(D)。A.6B.0C.2D.12.設(shè)a=5,b=6,c=7,d=8,m=2,n=2,則執(zhí)行(m=a>b)&&(n=c>d)后n的值為(B)。A.1B.2C.3D.4設(shè)x、y和z都是int類型變量,且x=3,y=4,z=5,則下面的表達(dá)式中,值為0的表達(dá)式為(D)。A.’x’&&’y’B.x<=yC.x||y+z&&y-zD.!((x<y)&&!z||1)為了避免嵌套的if-else語句的二義性,C語言規(guī)定else總是與(C)組成配對(duì)關(guān)系。A.縮排位置相同的ifB.在其之前未配對(duì)的ifC.在其之前未配對(duì)的最近的ifD.同一彳亍上的ifTOC\o"1-5"\h\z邏輯運(yùn)算符兩側(cè)運(yùn)算對(duì)象的數(shù)據(jù)類型(D)。A.只能是0或1B.只能是0或非0正數(shù)C.只能是整型或字符型數(shù)據(jù)D.可以是任何類型的數(shù)據(jù)以下關(guān)于運(yùn)算符優(yōu)先順序的描述中正確的是(C)。A.關(guān)系運(yùn)算符<算術(shù)運(yùn)算符<賦值運(yùn)算符<邏輯與運(yùn)算符B.邏輯與運(yùn)算符<關(guān)系運(yùn)算符<算術(shù)運(yùn)算符<賦值運(yùn)算符C.賦值運(yùn)算符<邏輯與運(yùn)算符<關(guān)系運(yùn)算符<算術(shù)運(yùn)算符D.算術(shù)運(yùn)算符<關(guān)系運(yùn)算符<賦值運(yùn)算符<邏輯與運(yùn)算符下列運(yùn)算符中優(yōu)先級(jí)最高的是(C)。A.<B.&&C.+D.!=選擇出合法的if語句(設(shè)intx,a,b,c;)(A)。A.if(a=b)c++;B.if(a=<b)c++;C.if(a<>b)c++;D.if(a=>b)c++;能正確表示“當(dāng)x的取值在[-58,-40]和[40,58]范圍內(nèi)為真,否則為假”的表達(dá)式是(C)。A.(x>=-58)&&(x<=-40)&&(x>=40)&&(x<=58)B.(x>=-58)||(x<=-40)||(x>=40)||(x<=58)C.(x>=-58)&&(x<=-40)||(x>=40)&&(x<=58)D.(x>=-58)||(x<=-40)&&(x>=40)||(x<=58).判斷char型變量s是否為小寫字母的正確表達(dá)式是(C)。A.’a’<=s<=’z’B.(s>=’a’)&

(s<=’z’)C.(s>=’a’)&&(s<=’z’)D.(’a’<=s)and(’z’>=s).若希望當(dāng)x的值為奇數(shù)時(shí),表達(dá)式的值為“真”,x的值為偶數(shù)時(shí),表達(dá)式的值為“假”。則以下不能滿足要求的表達(dá)式是(C)。A.x%2==1B.!(x%2==0)C.!(x%2)D.x%212.已知x=45,y=’a’,z=0;則表達(dá)式(x>=z&&y<’z’||!y)TOC\o"1-5"\h\z的值是(C)。A.0B.語法錯(cuò)C.1D.“假”13.指出下列程序段所表示的邏輯關(guān)系是(B)。if(a<b){if(c==d)x=10;}elsex=-10;A.xx=-10;A.xB.xC.xD.x101010101010101014.有一函數(shù):ab且cdab且cdab且cdabab且cdab且cdab且cdcd1x0y0x01x0x值正確計(jì)算出y值的是(C)if(x>0)y=1;elseif(x==0)y=0;elsey=-1;y=0;if(x>0)y=1;elseif(x<0)y=-1;y=0;if(x>=0)if(x>0)y=1;elsey=-1;if(x>=0)if(x>0)y=1;elsey=0;elsey=-1;.執(zhí)行以下語句后,y的值為(A)intx,y,z;x=y=z=0;++x||++y&&++z;A.0B.1C.2D.不確定值.已知inta=1,b=2,c=3;以下語句執(zhí)行后a,b,c的值是(B)。if(a>b)c=a;a=b;b=c;a=2,b=3,c=3a=2,b=3,c=2A.a=1,b=2,c=3a=2,b=3,c=3a=2,b=3,c=2C.a=2,b=3,c=1D.請(qǐng)閱讀以下程序:該程序(C)o#include“stdio.h"main(){intx=-10,y=5,z=0;

if(x=y+z)printf(”***n”);elseprintf(”$$$n”);}A有語法錯(cuò)不能通過編譯B.可以通過編譯但不能通過連接C.輸出***D.輸出$$$.以下程序的運(yùn)行結(jié)果是(C)。#include””main(){inta=1;if(a++>1)printf(elseprintf(}A.0D.3.當(dāng)a=1,b=2,c=4,d=3if(a<b)if(c<d)x=1;elseif(a<c)if(b<d)x=2;elsex=3;elsex=4;elsex=5;A.1D.420.執(zhí)行以下程序段后,變量”%dn”,a);%dn””%dn”,a);%dn”,a--);B.1 C.2執(zhí)行完下面一段程序后x的值是 (B)。B.2 C.3x,y,z的值分別為( B)。x=(--a==b++)?--a:++b;y=a++;z=b;A.x=0,y=0,z=0B.x=-1,y=-1,z=1C.x=0,y=1,z=0D.x=-1,y=2,z=121.若a、b、c、d、w均為int類型變量,則執(zhí)行下面語句后的w值是(A)。a=1;b=2;c=3;d=4;w=(a<b)?a:b;w=(w<c)?w:c;w=(w<d)?w:d;A.1B.2C.3D.422.以下程序的輸出結(jié)果是(C)#includemain(){inta=5,b=4,c=6,d;printf(”%dn”,d=a>b?a>c?a:c:b);}A.5B.4C.6D.不確定23.若a、b、c1、c2、x、y均為整型變量,正確的switch語句是(D)。A.switch(a+b);B.switcha{case1:y=a+b;break;{casec1:y=a-b;break;

case0:y=a-b;x=a*d;break;default:casec2:break;default:casec2:x=a+b;}C.switch(a*a+b*b){case3:D{default:switch(a-b)}3}3的數(shù)出結(jié)果是( C)n”,k++);n”,k++);n”,k++);n”,k++);n”);y=a*b;break;y=a+b;break;case3:x=a+b;break;case3:y=b-a;break;case10:y=a-b;break;}24.執(zhí)行下列程序,輸入為#include””main(){intk;scanf(”%d”,&k);switch(k)TOC\o"1-5"\h\z{case1:printf(”printf(printf(”printf(”break;default:printf(}}A.3D.4425.假定等級(jí)和分?jǐn)?shù)有以下對(duì)應(yīng)關(guān)系:TOC\o"1-5"\h\z等級(jí):A分?jǐn)?shù):85——100等級(jí):B分?jǐn)?shù):60——84等級(jí):C分?jǐn)?shù):60以下對(duì)于等級(jí)grade輸出相應(yīng)的分?jǐn)?shù)區(qū)間,能夠完成該功能的程序段是(D)。A.switch(grade)85—— n”);”6085—— n”);”60—— n”);A A\” n”);n”);case’B’:printf(case’C’:printf(default:printf(”}B.switch(grade)85—— n”);”6085—— n”);”60—— n”);A A\” n”);n”);break;case’B’:printf(case’C’:printf(default:printf(”}C.switch(grade)85—— n”);”6085—— n”);”60—— n”);A A\” n”);n”);break;case’B’:printf(break;case’C’:printf(default:printf(”

D.switch(grade){caseD.switch(grade){case’C’ :printf(”break;case’B’:printf(break;default:printf(”break;case’A’ :printf(}26.有如下程序,寫出該執(zhí)行結(jié)果(n”);60——85——C)。n”);n”);n”);#includemain(){floatx=,y;if(x<y=;elseif(x<y=x;elsey=;printf(”n”,y);}A.B.C.D27.以下程序的運(yùn)行結(jié)果是(C)。#includemain(){inta=2,b=-1,c=2;if(a<b)if(b<0)c=0;

elsec++;printf(”n”,c);C.C.2A.0B.1D32828運(yùn)行以下程序后,如從鍵盤上輸入china#,則輸出為(C)#includemain(){intv1=0,v2=0;charch;while((ch=getchar())!=’#’)switch(ch){case’a’:case’h’:default:v1++;case’o’:v2++;}printf(”n”,v1,v2);}A.2,0B.5,0D2,5C.5,529有以下程序,若輸入為字符#include””若輸入為字符s,則程序運(yùn)行結(jié)果為(A)main(){charch;ch=getchar();switch(ch){case’a’:printf(”n”,ch);TOC\o"1-5"\h\zdefault:printf(”n”);case’b’:printf(”n”,ch);case’c’:printf(”n”,ch);}}有語法錯(cuò)誤A.end!B.end!C.有語法錯(cuò)誤D.a(chǎn)=sb=send!c=s30.有以下程序,程序運(yùn)行后的輸出結(jié)果是(A)#includemain(){inta=15,b=21,m=0;switch(a%3){case0:m++;break;case1:m++;switch(b%2){default:m++;case0:m++;break;}}printf(”n”,m);}A.1B.2CD.42.2填空題1.1.若從鍵盤輸入58,則輸出結(jié)果是585858o#includemain(){inta;scanf("%d,&a);if(a>50)printf("%d,a);if(a>40)printf("%d,a);if(a>30)printf("%d,a);}設(shè)intx=9,y=8;表達(dá)式x==y+1的結(jié)果是—1。定義intx,y;執(zhí)行y=(x=1,++x,x+2);后,y的值是—4,定義intx=10,y,z;執(zhí)行y=z=x;x=y==z;后,x的結(jié)果是1Q.設(shè)inta=1,b=2,c,d,e;執(zhí)行c=(-a++)+(++b);d=(b--)+(++a)-a;e=(a/(++b))-(a/(--a));請(qǐng)問a,b,c,d,e的結(jié)果是:23230。.設(shè)inta=2,b=3,c,d,e,f;執(zhí)行c=(a++>=--b);d=(a==++b);e=(a--!=b);f=(++a>b--);請(qǐng)問a,b,c,d,e,f的結(jié)果是:_321100。.以下程序的運(yùn)行結(jié)果是200。

#includemain(){inta,b,c,s,w,t;s=w=t=0;a=-1;b=3;c=3;if(c>0)s=a+b;if(a<=0){if(b>0)if(c<=0)w=a-b;}elseif(c>0)w=a-b;elset=c;printf(”%d%d%d”,s,w,t);}以下程序的運(yùn)行結(jié)果是#include””main()以下程序的運(yùn)行結(jié)果是#include””main(){inta,b,c,d,e;a=c=1;b=20;d=100;if(!a)d=d++;elseif(!b)if(d)d=--d;elsed=d--;printf(”n”,d);9.以下程序的運(yùn)行結(jié)果是_625000。(換行)51#includemain(){inta,b=250,c;if((c=b)<0)a=4;elseif(b=0)a=5;elsea=6;printf("n”,a,c);if(c=(b==0))a=5;printf("n”,a,c);if(a=c=b)a=4;printf("n”,a,c);10.下面程序根據(jù)以下函數(shù)關(guān)系,對(duì)輸入的每個(gè)x值,計(jì)算出y#include值。請(qǐng)?jiān)凇尽績(jī)?nèi)填空#includexy2<x<=10x(x+2)-1<x<=21/xx<=-1x-1力力main(){intx,y;ax2+bx+c=0的根。請(qǐng)?jiān)赼x2+bx+c=0的根。請(qǐng)?jiān)趎”);-c/b);imagpartscanf(”%d”,&x);if(【1】)y=x*(x+2);elseif(【2】)y=1/x;elseif(x<=-1)y=x-1;else【3】;if(y!=-1)printf(”%d”,y);elseprintf(”error”);}11.以下程序的功能是計(jì)算一元二次方程[]內(nèi)填入正確內(nèi)容。#include#includemain(){floata,b,c,t,disc,w,term1,term2;printf(”entera,b,c:”);scanf(%f%f%f”,&a,&b,&c);if(【1】)if(【2】)printf(”noanswerduetoinputelseprintf(”nelse{disc=b*b-4*a*c;w=2*a;term1=-b/w;t=abs(disc);term2=sqrt(t)/w;if(【3】)printf(”complexroot\nrealpart=%fn”,term1,term2);elseprintf(”realroots\nroot1=%fterm1+term2,term1-term2);12.以下程序根據(jù)輸入的三角形的三邊判斷是否能組成三角形,若可以則輸出它的面積和三角形的類型。請(qǐng)?jiān)凇尽績(jī)?nèi)填入正確內(nèi)容。#include#includemain(){floata,b,c,s,area;printf(”pleaseinputthreeedgesofatriangle:”);scanf(”%f%f%”f,&a,&b,&c);if(【1】){s=(a+b+c)/2;area=sqrt(s*(s-A*(s-B*(s-c));printf(”ntheareaofthetriangleis:%f”,area);if((a==b)&&(b==c))TOC\o"1-5"\h\zprintf(”等邊三角形”);elseif(【2】)printf(”等腰三角形”):elseif(【3】)printf(”直角三角形”):elseprintf(”一般三角形”):}elseprintf(”不能組成三角形”);13.以下程序的功能是判斷輸入的年份是否是閏年。請(qǐng)?jiān)凇尽績(jī)?nèi)填入正確內(nèi)容。#includemain()intyear,flag;printf(”pleaseinputtheyeartojudewhetheritisaleapyear:”);scanf(”%d”,&year);if(year%400==0)flag=1;elseif(【1】)flag=1;else【2】;if(flag)printf(”n”,year);elseprintf(”n”,year);}14.以下程序是對(duì)用戶輸入的字母進(jìn)行大小寫轉(zhuǎn)換。請(qǐng)?jiān)凇尽績(jī)?nèi)填入正確內(nèi)容。#includemain(){charch;printf(”pleaseinputaletter:”);scanf(”%c”,&ch);if(【1】)ch=ch+32;elseif(ch>=’a’&&ch<=’z’)【2】;printf(”theconvertedletteris:%cn”,ch);}15.以下程序是對(duì)從鍵盤輸入的任何三個(gè)整數(shù),求出其中的最小值。請(qǐng)?jiān)凇尽績(jī)?nèi)填入正確內(nèi)容。#includemain(){inta,b,c,min;printf(”pleaseinputthreenumbers:”);scanf(”%d%d%”d,&a,&b,&c);if(【1】)min=b;elsemin=a;if(min>c)【2】;printf(”min=%dn”,min);}.以下程序?qū)崿F(xiàn)這樣的功能:商店賣西瓜,10斤以上的每斤元,8斤以上的每斤元,6斤以上的每斤元,4斤以上的每斤元,4斤以下的每斤元,從鍵盤輸入西瓜的重量和顧客所付錢數(shù),則輸出應(yīng)付款和應(yīng)找錢數(shù)。請(qǐng)?jiān)凇尽績(jī)?nèi)填入正確內(nèi)容。#includemain(){floatweight,money,rate;TOC\o"1-5"\h\zprintf(”thepaidmoneyoftheclientis:”);scanf(”%f”,&money);printf(”theweightofthewatermelonis:”);scanf(”%f”,&weight);if(【1】)rate=;

elseif(weight>8)rate=;elseif(weight>6)【2】;elseif(weight>4)rate=;【3】rate=;printf(”theaccountpayableofthewatermelonn”,weight*rate);printf(”thechangeforclientn”,money-weight*rate);}.以下程序段的運(yùn)行結(jié)果是。#include””main(){charch1=switch(ch1){case’a’:switch(ch2){case#include””main(){charch1=switch(ch1){case’a’:switch(ch2){case’ ,case’}case’b’a’,ch2=’A’B’:printf(”bad!n”);break;:printf(”joken”);}}.根據(jù)以下函數(shù)關(guān)系,對(duì)輸入的每個(gè)x值,計(jì)算出相應(yīng)的y值。請(qǐng)?jiān)凇尽績(jī)?nèi)填入正確內(nèi)容。

xyx<000<=x<10x10<=x<201020<=x<40+20#include"“main(){intx,rate;floaty;printf("pleaseinputthevalueofx:scanf("%d,&x);if(【1】)rate=-1;elserate=【2】;switch(rate){case-1:y=0;break;case0:y=x;break;y=10;break;y=*x+20;break;y=-2;}if(【3】)printf("y=%fn”,y););n);elseprintf("thevalueofxisinvalid!);n);19.以下程序?qū)崿F(xiàn)的功能是:從鍵盤輸入某年某月,輸出該年份該月的天數(shù)。請(qǐng)?jiān)凇尽績(jī)?nèi)填入正確內(nèi)容。#includemain(){intyear,month,days,leap;printf(”pleaseinputbothyearandmonth:”);scanf(”%4d/%2d”,&year,&month);switch(【1】){case1:case3:case5;case10:case12:days=31;【2】case4:case6:case9:case11:days=30;break;case2:if(year%400==0)leap=1;elseif(year%4==0&&year%100!=0)leap=1;else【3】;if(leap)days=29;elsedays=28;

}printf(”%d年%d月的天數(shù)為days);}20.以下程序完成兩個(gè)數(shù)的四則運(yùn)算。請(qǐng)?jiān)凇尽績(jī)?nèi)填入正確內(nèi)容。#include””main(){floatx,y;n”,year,month,內(nèi)填入正確內(nèi)容。printf(scanf(”switch(pleaseinputtheexpression:%f%c%”n”,year,month,內(nèi)填入正確內(nèi)容。printf(scanf(”switch(pleaseinputtheexpression:%f%c%”f,&x,&operator,&y););case1】)+’:printf(%g%c%g=%ng”,x,operator,y,x+y);case【2】case【2】:printf(%g%c%g=%ng”,x,operator,y,x-y);break;case’*break;case’*’:printf(%g%c%g=%ng”,x,operator,y,x*y);break;case’/’:if(y==n”);printf(n”);elseprintf(”%g%c%g=%\ng”,x,operator,y,x/y);n”n”);3】:printf(}21.以下程序運(yùn)行后的輸出結(jié)果是#includemain(){intx=10,y=20,t=0;if(x==y)t=x;x=y;y=t;printf(”%d,%dn”,x,y);}22.執(zhí)行以下語句后,x、y和z的值分別為。intx,y,z;x=y=z=0;++x||++y&&++z;第三章循環(huán)結(jié)構(gòu)31選擇題以下程序的輸出結(jié)果是(A)。main(){intn=4;while(n--)printf(〞%d〞,--n);}以下程序的輸出結(jié)果是(A)。main(){intx=10,y=10,i;for(i=0;x>8;y=++i)printf("%d%d",x--,y);}當(dāng)執(zhí)行以下程序段時(shí)(A)。x=-1;do{x=x*x;}while(!x);B.A.循環(huán)體將執(zhí)行一次B.循環(huán)體將執(zhí)行兩次

C.循環(huán)體將執(zhí)行無數(shù)多次系統(tǒng)將提示有語法錯(cuò)誤.執(zhí)行以下程序后輸出的結(jié)果是()。main(){inty=10;do{y--;}while(--y);printf("%d\n",y--);}.下面程序的輸出結(jié)果是()。main(){intx=3,y=6,a=0;while(x++!=(y-=1)){a+=1;if(y<x)break;}printf("x=%d,y=%d,a=%d\n",x,y,a);}=4,y=4,a=1=5,y=5,a=1=5,y=4,a=3=5,y=4,a=1.若i,j已定義為int類型,則以下程序段中內(nèi)循環(huán)的總的執(zhí)行次數(shù)是()。for(i=5;i;i--)for(j=0;j<4;j++)D.{…}D..請(qǐng)讀程序:#include<>main(){intx=1,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;case1:b++;break;

}case2:a++;b++;break;}printf("a=%d,b=%d\n",a,b);}=1,b=0上面程序的輸出結(jié)果是()。=1,b=0=2,b=1=1,b=1=2,b=2.若有以下程序段,w和k都是整型變量w=k;LB:if(w==0)gotoLE;w--;printf(〞*〞);gotoLB;LE:則不能與上面程序段等價(jià)的循環(huán)語句是(for(w=k;w!=0;w--)print(〞*〞);w=k;while(w--!=0)printf(〞*〞);w++;w=k;do{w--;printf(〞*〞);}while(w!=0);(w=k;w;--w)printf(〞*〞);.下面程序的輸出是()。main(){char*s=〞〞;intk,v1=0,v2=0,v3=0,v4=0;for(k=0;s[k];k++)switch(s[k]){default:v4++;case1:v1++;case2:v2++;csse3:v3+

溫馨提示

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

評(píng)論

0/150

提交評(píng)論