《貴州大學(xué)c語言試卷》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
一、單項(xiàng)選擇題1.完成C源文件編輯后、到生成執(zhí)行文件,C語言處理系統(tǒng)必須執(zhí)行的步驟依次為()B.連接、運(yùn)行D.編譯、連接A.連接、編譯C.編譯、運(yùn)行2.下列說法正確的是()A.一個(gè)c語言程序并非總是從主函數(shù)位置開始執(zhí)行的B.一個(gè)c語言程序有且只有一個(gè)主函數(shù)C.函數(shù)可以嵌套定義,不可以嵌套調(diào)用D.程序函數(shù)的位置不可以任意3.下面是合法C語言標(biāo)識(shí)符的是()A.2A_K;B._M+N;C.-M3;D.AC_2;4.下列格式符中,可以用于控制字符輸出的是()A.%dB.%fC.%oD.%c5.設(shè)x、y、z和k都是int型變量,則執(zhí)行表達(dá)式x=(y=4,z=16,k=30)后,x的值是()A.4;B.16;C.30;D.50;6.執(zhí)行語句“for(i=l,s=0;i<=5;i++)s+=i;"后,變量s、i的當(dāng)前值是()A.10,5B.15,6C.15,5D.10,67.若有定義intx,*p;,則以下正確的賦值表達(dá)式是()A.p=x;B.p=&x;C.*p=&x;D.*p二*x;8.以下對(duì)結(jié)構(gòu)體類型變量的定義中,不正確的是()A.typedefstructaaB.#defineAAstructaa{intn;AA{intn;floatm;floatm;}AA;}stud;AAstud;C.struct{intn;floatm;}aa;structaastud;struct{intn;floatm;}stud;9,有如下函數(shù)調(diào)用語句:func(reel,rec2+rec3,(rec4+rec5));
1函數(shù)調(diào)用語句中,含有的實(shí)參個(gè)數(shù)是(A.3B.4C.5D.以上均不是10.對(duì)于以下宏定義:#defineSQ(x)x*x#defineQQ(x,y)SQ(x)-SQ(y)宏調(diào)用QQ(2*3,2+3)執(zhí)行后值為()A.25B.11C.43D.以上均不是11.完成C源文件編輯后、到生成執(zhí)行文件,C語言處理系統(tǒng)必須執(zhí)行的步驟依次為()A.連接、編譯B.連接、運(yùn)行C.編譯、運(yùn)行D.編譯、連接12.下列說法正確的是()A.一個(gè)c語言程序并非總是從主函數(shù)位置開始執(zhí)行的B.一個(gè)c語言程序有旦只有一個(gè)主函數(shù)C.函數(shù)可以嵌套定義,不可以嵌套調(diào)用D.程序函數(shù)的位置不可以任意13.下面是合法C語言標(biāo)識(shí)符的是()A.2A_K;B._M+N;C.-M3;D.AC_2;14.下列格式符中,可以用于控制字符輸出的是()A.%dB.%fC.%oD.%c15.設(shè)x、y、z和k都是int型變量,則執(zhí)行表達(dá)式x=(y=4,z=16,k=30)后,x的值是()A.4;B.16;C.30:D.50;16.執(zhí)行語句"for(i=l,s=0;i<=5;i++)s+=i;"后,變量s、i的當(dāng)前值是()A.10,5B.15,6C.15,5D.10,617.若有定義intx,*p;,則以下正確的賦值表達(dá)式是()A.p=x;B.p=&x;C.*p=&x;D.*p=*x;18.以下對(duì)結(jié)構(gòu)體類型變量的定義中,不正確的是()A.typedefstructaaB.#defineAAstructaa{intn;AA{intn;floatm;floatm;}AA;}stud;AAstud;C.structD.struct{intn;{intn;
2floatm;floatm;}aa;}stud;structaastud;
319.有如下函數(shù)調(diào)用語句:)B.4D.以上均不是B.11D.以上均不是func(reel,rec2+rec3,(rec4+rec5));函數(shù)調(diào)用語句中,含有的實(shí)參個(gè)數(shù)是(A.3C.520.對(duì)于以下宏定義:SdefineSQ(x)x*x#defineQQ(x,y)SQ(x)-SQ(y)宏調(diào)用QQ(2*3,2+3)執(zhí)行后值為(A.25C.4321.有如下程序的輸出結(jié)果是()main(){inty=3,x=3,z=l;Printf("%d%d
4”,(++x,y++),z+2);A34B42C43D3322.下列說法不正確的是()A主函數(shù)main中定義的變量在整個(gè)文件或程序中有效B不同函數(shù)中,可以使用相同名字的變量C形式參數(shù)是局部變量D在一個(gè)函數(shù)內(nèi)部,可以在復(fù)合語句中定義變量,這些變量只在本復(fù)合語句中有效.23.算術(shù)表達(dá)式x+a%3*(int)(x+y)%2/4的值為().其中,x=3.5,a=7,y=4.7.A2.500000B3.500000C3.000000D4.50000024.設(shè)有如下定義:inta=l,b=2,c=3,d=4,m=2,n=3;則執(zhí)行表達(dá)式(m=a>b)&&(n=c>d)后,n的值為()A1B0C3D425.以下程序段運(yùn)行后i的值為()ointi=0,c=l;switch(c){case1:i+=2;case2:i+=l;break;default:i+=4;A3B7C1D426.若有以下定義及語句,則對(duì)數(shù)組a元素正確引用表達(dá)式是()inta[3][4];int(*p)[4]=a;Ap+1B*(p+2)C*(p+2)[l]D*(*p+l)27.以下程序的輸出結(jié)果為()o
5main(){charsi[40]—country”,s2[20]iside”;inti=0,j=0;while(si[i]!=,\0*)i++;while(s2[j]!=,\0*)si[i++]=s2[j++];sl[i]=0;printfCz%s
6/z,si);)AsideBcountryCsidetryDcountryside26.有如下函數(shù)調(diào)用語句:sum(rl,r2+r3,(r4,r5));則含有的實(shí)參個(gè)數(shù)是()。A3B5C4D有語法錯(cuò)27.有如下函數(shù):intf(inta){autointb=0;staticintc=3;b=b+1;c=c+l;return(a+b+c);)如果有inti,j;,則執(zhí)行兩次調(diào)用i=f(3);j=f(3)后,i,j值為()A7,7B7,8C8,9D8,728.設(shè)有說明int(*ptr)();其中標(biāo)識(shí)符ptr是()。A是一個(gè)指向整形變量的指針B是一個(gè)指針,它指向一個(gè)函數(shù)值是int的函數(shù)C是一個(gè)函數(shù)名D定義不合法29.常數(shù)的書寫格式?jīng)Q定了常數(shù)的類型和值,0x1011是()A.8進(jìn)制整型常量B.字符常量C.16進(jìn)制整型常數(shù)D.2進(jìn)制整型常數(shù)30.執(zhí)行下列程序后,a值為:()inta,b;a=15;b=12;a=(a-==b++)?a%5:a/5;(A)0(B)2.8(C)4(D)231.在調(diào)用函數(shù)時(shí),如果實(shí)參是簡(jiǎn)單變量,它與對(duì)應(yīng)形參之間的數(shù)據(jù)傳遞方式是()(A)地址傳遞(B)單向的值傳遞(O由實(shí)參傳給形參,再由形參傳給實(shí)參(D)傳遞方式由用戶指定32.有如下程序段int*p,a,b=l;p=&a;*p=10;a=*p+b;執(zhí)行該程序段后,a的值為()
7(A)12(B)11(C)10(D)編譯出錯(cuò)26.已知char和int類型分別占1和2個(gè)字節(jié),則sizeof(yy)的返回值應(yīng)為:()union(charal;inta2;inta3;}yy;(A)2(B)4(C)5(D)定義有錯(cuò)36.設(shè)j為int型變量,下列for循環(huán)語句的執(zhí)行結(jié)果是()for(j=10;j>3;j—){if(j%3)j—;—J;-j;printf(a%dw,j);}(A)63(B)74(C)62(D)74137.宏定義"#definep(x,y,z)x=y*z;"的宏替換”p(a,x+5,y—3.D”應(yīng)為()A.a=x+5*y—3.1B.a=(x+5)*(y—3.1);C.a=x+5*y—3.1D.a=(x+5)*(y—3.1)38.下列各語句定義了數(shù)組,其中一個(gè)不正確的是()A.staticinta[5],b[2][3];B.charno[30],rec[30,6];C.intx[]={2,4,6,8,10);D.intx[10]={l,2,3,4,5);39、以下是合法的C語句的是()A)a==lB)printf("hello");C)a=int(i);D)i++j++;40.一個(gè)C程序由若干個(gè)C函數(shù)組成,各個(gè)函數(shù)在文件中的書寫位置為()(A)任意(B)第一個(gè)函數(shù)必須是主函數(shù),其他函數(shù)任意(0必須完全按調(diào)用順序排列(D)其他函數(shù)必須在前,主函數(shù)必須在最后41.以下選項(xiàng)中合法的字符常量是()A."B"B.''010'C.68D.D42.若有以下定義,則表達(dá)式的值為3的是()intk=7,x=12;A.x%=(k%=5)B.x%=(k-k%5)C.x%=k-k%5D.(x%=k)-(x%=5)43.若已定義x和y為double類型,則表達(dá)式x=l,y=x+3/2的值是()A.1B.2C.2.0D.2.544.判斷字符變量c的值為數(shù)字(‘0'--'9')則返回1,否則返回0,可用表達(dá)式()A.'O'<=c<='9'B.'O'<=c&&c<='9'
8C.'O'<=c||c<='9'D.'9'>=c>='O'45.有如下程序,該程序的執(zhí)行結(jié)果是()main()(intn=9;while(n>6){n--;printf("%d",n);})A.987B.876C.8765D.987646.若有以下的定義及語句,則對(duì)數(shù)組元素正確引用的表達(dá)式是()inta[5][4];int(*p)[4]=a;A.p+1B.*(p+3)C.*(p+l)+2D.*(*(p+3)+2)47.有如下函數(shù),調(diào)用f(“1234”)的返回值為()intf(char*s)(intk=0;while(*s)k=k*10+*s++-'O';returnk;)A.“1234”B.1234C.“4321”D.432148.對(duì)于以下程序段,運(yùn)行后i的值為()enumWEEK{1,2,3,4,5,6,7};enumWEEKa=l;inti=O;switch(a){case1:i=2;case2:i=3;default:i=4;)A.2B.0C.3D.449.執(zhí)行下列程序后變量i的值應(yīng)為()#defineTA(x,y)((x)*y)inti=3;i=TA(i,i+l)+2;A.15B.10C.12D.1450.變量a所占內(nèi)存字節(jié)數(shù)是()unionU{charst[4];inti;long1;
9);structA{intc;unionUu;}a;A.4B.5C.6D.851.下列字符串不是標(biāo)識(shí)符的是()sumB.AverageC.DaynightD.M.D.JOHN52.在C語言中,回車換行后是()
10B.\tC.\vD.\b53.在C語言中,語句和數(shù)據(jù)定義是用()作為結(jié)束標(biāo)記的A.句號(hào)B.逗號(hào)C.分號(hào)D.括號(hào)54.設(shè)有如下定義:intx=10,y=5,z;則語句printf(“%d
11",z=(x+=y,x/y));的輸出結(jié)果是()A.0B.1C.3D.455.以下程序的輸出結(jié)果是()main(){charcl=,a',c2='A';printf(K%c,%c,%d,%d
12w,cl,c2,cl,c2);)A.因輸出格式不合法,輸出出錯(cuò)信息B.a,A,97,65C.65,97,A,aD.a,A,a,A56.完成C源文件編輯后經(jīng)過編譯、連接,生成文件擴(kuò)展名為()的可執(zhí)行文件。A..cB..exeC..objD..txt57.下列運(yùn)算符優(yōu)先級(jí)最高的是()A.>B.+C.&&D.!=58.一個(gè)C程序的執(zhí)行是從()A.本程序中的main函數(shù)開始,到main函數(shù)結(jié)束B.本程序中的第一個(gè)函數(shù)開始,到本程序中的最后一個(gè)函數(shù)結(jié)束C.本程序中的main函數(shù)開始,到本程序中的最后一個(gè)函數(shù)結(jié)束D.本程序中的第一個(gè)函數(shù)開始,到本程序中的main函數(shù)結(jié)束59.以下敘述中正確的是()A.構(gòu)成C程序的基本單位是函數(shù)B.可以在一個(gè)函數(shù)中定義另一個(gè)函數(shù)C.main。函數(shù)必須放在其它函數(shù)之前D.所有被調(diào)用的函數(shù)一定要在調(diào)用之前進(jìn)行定義60.設(shè)a和b均為double型常量,且a=5.0、b=2.0,則表達(dá)式(int)(a/b)的值是()
13A.2.5B.2.000000C.2.500000D.260.取模運(yùn)算符“獷不能用于哪一種類型的運(yùn)算()A.X=10%3B.X=6%3C.X=1O24%1D.X=6.28%3.1412.下列對(duì)變量的定義哪個(gè)正確()A.intx,inty;B.charsi,s2C.floata,b;D.charif;63.字符串“HELLO!”的長(zhǎng)度是多少?在內(nèi)存中占用多少單元數(shù)?()A.長(zhǎng)度為6,占6個(gè)單元B.長(zhǎng)度為6,占7個(gè)單元C.長(zhǎng)度為7,占7個(gè)單元D.長(zhǎng)度為7,占6個(gè)單元64.下列錯(cuò)誤的賦值語句是()A.X=Y++=1;B.X=3*4;C.X='F'-'A'D.X=2*(++I);65.如果:a=5;b=6;那么:a>=b&&(a+5)>=(b-3)和a>b||a!=b的值各是多少()A.0,0B.0,1C.1,0D.1,1以下()是C語言提供的合法數(shù)據(jù)類型關(guān)鍵字A)FloatB)ChARC)IntgerD)unsigned以下選項(xiàng)中合法的字符常量是()A)"B"B)'\010'C)68D)D設(shè)正x、y均為整型變量,且x=10,y=3,則以下語句的輸出結(jié)果是()printf(v%d,%d
14",x―,―y);A)10,2B)9,3C)9,2D)10,3下列字符串不是標(biāo)識(shí)符的是()A.YEARB.AverageC.stUDENTD.7_num66.以下選項(xiàng)中合法的字符常量是()A."B"B.''010'C.68D.D67.若有以下定義,則表達(dá)式的值為3的是()intk-7,x=12;A.x%=(k%=5)B.x%=(k-k%5)C.x%=k-k%5D.(x臟k)-(x%=5)68.若已定義x和y為double類型,則表達(dá)式x=l,y=x+3/2的值是()A.1B.2C.2.0D.2.569.判斷字符變量c的值為數(shù)字「0'--'9')則返回1,否則返回0,可用表達(dá)式()A.'O'<=c<='9'B.'O'<=c&&c<='9'C.'O'<=c||c<='9'D.'9'>=c>='O'70.有如下程序,該程序的執(zhí)行結(jié)果是()main()(intn=9;while(n>6){n一;printf("%d",n);}
15B.876A.987C.8765D.987669.若有以下的定義及語句,則對(duì)數(shù)組元素正確引用的表達(dá)式是()inta[5][4];int(*p)[4]=a;A.p+1B.*(p+3)C.*(p+l)+2D.*(*(p+3)+2)72,有如下函數(shù),調(diào)用f(“1234”)的返回值為()intf(char*s)(intk=0;while(*s)k=k*10+*s++-'O';returnk;)A.“1234”B.1234C.“4321”D.432173.對(duì)于以下程序段,運(yùn)行后i的值為()enumWEEK{1,2,3,4,5,6,7};enumWEEKa=l;inti=O;switch(a)(case1:i=2;case2:i=3;default:i=4;)A.2B.0C.3D.474.執(zhí)行下列程序后變量i的值應(yīng)為()#defineTA(x,y)((x)*y)inti=3;i=TA(i,i+l)+2;A.15B.10C.12D.1475.變量a所占內(nèi)存字節(jié)數(shù)是()unionU{charst[4];inti;long1;);structA{intc;
16unionUu;A.4B.5C.6D.876.以下程序的輸出結(jié)果是()main(){inta=3;printf(“%d
17",(a+=a-=a*a));)A)-6B)12C)0D)-1277.下列說法錯(cuò)誤的是()A.一個(gè)c語言程序總是從主函數(shù)位置開始執(zhí)行的B.一個(gè)c語言程序有且只有一個(gè)主函數(shù)C.函數(shù)可以嵌套定義,不可以嵌套調(diào)用D.程序函數(shù)的位置可以任意78.在C語言中,語句和數(shù)據(jù)定義是用()作為結(jié)束標(biāo)記的A.分號(hào)B.逗號(hào)C.句號(hào)D.括號(hào)79.語句“x*=y+2;”與下列()語句結(jié)果一樣A.x=x*y+2;B.x=2+x*y;C.x=x*(y+2);D.x=y+2*x;80.下列各語句中,能夠且僅輸出整型變量a、b中最大值的是()A.if(a>b)printf(,z%d
18,z,a)jprintf(,z%d
19,z,b);B.printf("%d
20,z,b);if(a>b)printf("%d
21,z,a);C.if(a>b)printf("%d
22f/,a);elseprintf(H%d
23",b);D.if(a
24z,,a);printf(w%d
25z,,b);81.以下程序的輸出結(jié)果是()main(){intx=4,y=2,z;printf(K%d
26w,z=(x-=y,x/y));}A.0B.1C.2D.382.以下不能正確定義二維數(shù)組的選項(xiàng)是()A)inta⑵[2]={{1},⑵};B)inta[2][]={{1,2},{3,4},{5,6}};C)inta[2][2]={{1},2,3};D)inta[][2]={l,2,3,4};83.判斷字符變量c的值為數(shù)字('O'—'9')則返回1,否則返回0,可用表達(dá)式:()(A)O<=c&&c<='9'(B)'O'<=c<='9'(C)'O'<=c||c<='9'(D)以上均不是84.設(shè)j為int型變量,下列for循環(huán)語句的執(zhí)行結(jié)果是()for(j=7;j>3;j—){if(j%3)j—;-j;-j;printf("%d",j);}(A)4(B)40(C)死循環(huán)(D)41
2785.已知char和int類型分別占1和2個(gè)字節(jié),則sizeof(yy)的返回值應(yīng)為:()union(charal;inta2;inta3;}yy;(A)2(B)4(C)5(D)定義有錯(cuò)86.以下程序的運(yùn)行結(jié)果是()#defineMIN(x,y)(x)<(y)?(x):(y)main(){inti=10,j=13,k;k=10*MIN(i,j);printf(“%d
28",k);}A)10B)130C)100D)1387.下列字符序列中,不合法的C語言標(biāo)識(shí)符的是()。A.abcl23B.no.1C._123_D._ok88.以下說法中正確的是()oA.C語言程序總是從第一個(gè)定義的函數(shù)開始執(zhí)行B.在C語言程序中,要調(diào)用的函數(shù)必須在main()函數(shù)中定義C.C語言程序總是從main()函數(shù)開始執(zhí)行D.C語言程序中的main()函數(shù)必須放在程序的開始部分89.設(shè)以下變量均為int類型,則值不等于7的表達(dá)式是()oA.(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)90.當(dāng)調(diào)用函數(shù)時(shí),實(shí)參是一個(gè)數(shù)組名,則向函數(shù)傳送的是()oA,數(shù)組的長(zhǎng)度B,數(shù)組的首地址C.數(shù)組每一個(gè)元素的地址D.數(shù)組每個(gè)元素中的值91.下列程序運(yùn)行的情況是()omain(){inti=l,sum=0;while(i<10)sum=sum+l,i++;printf(/zi=%d,sum=%d”,i,sum);A.i=2,sum=l誤B.i=9,sum=9C.i=10,sum=9D.運(yùn)行出現(xiàn)錯(cuò)
2989.設(shè)x、y和z都是int類型變量,且x=3,y=4,z=5,則下面的表達(dá)式中,值為0的表達(dá)式是(A.'x'&&'y'C.x||y+z&&y-zB.D.x<=y!((x
30”,s->k);)A.3938B.3839C.380039D.39003897.完成C源文件編輯后、到生成執(zhí)行文件,C語言處理系統(tǒng)必須執(zhí)行的步驟依次為()氏編譯、連接D.運(yùn)行A.連接、編譯
31C.連接、運(yùn)行95.下列說法錯(cuò)誤的是()A.一個(gè)c語言程序總是從主函數(shù)位置開始執(zhí)行的B.一個(gè)c語言程序有且只有一個(gè)主函數(shù)C.函數(shù)可以嵌套定義,不可以嵌套調(diào)用D.程序函數(shù)的位置可以任意99.C語句“x*=y+2;”還可以寫作()A.x=x*y+2;B.x=2+y*x;C.x=x*(y+2);D.x=y+2*x;100.下列格式符中,可以用于控制輸出十進(jìn)制整數(shù)的是()A.%dB.%fC.%oD.%c10L下列各語句中,能夠且僅輸出整型變量a、b中最大值的是()A.if(a>b)printf("%d
32",a);printf("%d
33,b);B.printf(,z%d
34,z,b);if(a>b)printf("%d
35,z,a);C.if(a>b)printf("%d
36/z,a);elseprintf("%d
37",b);D.if(a
38,z,a);printf(z/%d
39,z,b);102.執(zhí)行語句“for(i=l;i<=10;i++)s+=i;"后,變量s、i的當(dāng)前值是()A.55,11B.55,10C.45,10D.45,11103.下列各語句定義了數(shù)組,其中一個(gè)不正確的是()A.inta[5],b[2][3];B.charno[30],rec口;C.intx[]={2,4,6,8,10};D.intx[10]={1,2,3,4,5);104.下列算法的特性,其中哪一個(gè)是不正確的()A.有窮性B.有一個(gè)或多個(gè)輸入C.不確定性D.可執(zhí)行性105.執(zhí)行語句wfor(i=0;i<10;++i,++a)scanf(,;%d",a);n試圖為int類型數(shù)組a[10]輸入數(shù)據(jù),是錯(cuò)誤的。錯(cuò)誤的原因是()A.變量不能做自增運(yùn)算B.數(shù)組首地址不可改變C.++i應(yīng)寫作i++D.++a應(yīng)寫作a++106.定義函數(shù)時(shí),缺省函數(shù)的類型聲明,則函數(shù)類型取缺省類型()A.voidB.charC.floatD.int二、填空題1.設(shè)inta=5,c=32;floatb=2.5;,表達(dá)式b+c/a的值為_8.5_2.若x和a均是int型變量,則計(jì)算x=(a=4,6*2)后x的值是123.設(shè)a=3,b=4,c=5o貝Ua+b>c&&b==c的值為0.
401.有如下程序段:intk=10;while(k=0)k=k-l;則循環(huán)體語句執(zhí)行—0次。2.inti=0,s=0;while(i 41則在輸入數(shù)據(jù)時(shí)如何輸入i=Lj=21.若x和a均是int型變量,則計(jì)算表達(dá)式x=(a=4,5*3)的值為2.inti=0,s=0; 42while(i<4)s+=i++;等價(jià)于inti,s;for(;;);1.對(duì)于int*p,*q,i=7,j=8;執(zhí)行:p=&i;q=p;p=&j;輸出結(jié)果(*p)=(*q)=2.以下函數(shù)用來求出兩整數(shù)之差并通過形參將結(jié)果傳回,請(qǐng)?zhí)羁?。voidfunc(intx,inty,*z)()3.C語言中,函數(shù)值類型的定義可以缺省,此時(shí)函數(shù)值的隱含類型是int型。4.一個(gè)C源程序至少包括一個(gè),即。32?一個(gè)函數(shù)由兩部分組成,它們是和。33.C語言的數(shù)據(jù)類型有四大類,它們是整型、字符型、單精度實(shí)型、雙精度實(shí)型。34.Break語句只能用于switch語句和循環(huán)語句語句。35.若x=3,y=z=4,下列各式的結(jié)果是什么?x)z\)z\)z\)zx)z12345//(\z(\/(Xz(x/(\(z>=y)?l:01z>=y&&y>=x1x 4337.表達(dá)式!9!=0的值為0。38.一個(gè)函數(shù)由兩部分組成,它們是函數(shù)頭和函數(shù)體。39.表達(dá)式(x=2,x-1,++x)的值為3。40.有以下說明定義語句,可用a.day引用結(jié)構(gòu)體成員day,請(qǐng)寫出引用結(jié)構(gòu)體成員a.day的其它兩種形式b->day,(*b).day。(intday;charmouth;intyear;}a,*b;b二&a;41.若聲明%hara[15]="Windows-XP";”,執(zhí)行語句"printf("%s",&a[3]);”的輸出結(jié)果為—dows-XP42.定義如下:typedefcharINT;INTn;則變量n的類型為—字符型—。43.設(shè)inta=5,c=32;floatb=2.5;,表達(dá)式b+c/a的值為4.5。44.計(jì)算a、b中最小值的條件表達(dá)式為ab!=c的值為_。63,用for循環(huán)打印147101316192225,其語句應(yīng)為:for(i=l;i<=9;i++)printf("冗3d",)64.執(zhí)行語句“a=5+(c=6);"后,變量a、c的值依次為,。65.若有定義:inta[3][4]={{l,2},{0},{4,6,8,10}};則的值為,的值為_。66.表達(dá)式~3&3的值為67.若有以下定義和語句,則++(*p)的值為inta[4]={0,1,2,3},*p;p=&a[l];68.若有定義:inta[2][3]={2,4,6,8,10,12},(*p)[3];p=a[0];*(*(p+D+l)的值是。69.執(zhí)彳了語句"for(s=0,i=l;;i++){if(i==6)continue;s+=i;}”后,s值為 4464.若聲明"chara[]="windows",b[]="9x"執(zhí)行語句,zprintf("%s",strcat(a,b));”的輸出結(jié)果為windows9x。65.C語言中能表示a^lO或aWlO的關(guān)系表達(dá)式是a>=101|a<=1066.計(jì)算a、b中最小值的條件表達(dá)式為—amainO{inti,j,m,n;i=8;j=10;m=++i;n=j++;printf(w%d,%d,%d,%d",i,j,m,n);)輸出結(jié)果:9,11,9,102..#include 45");輸出結(jié)果:3;4;5;6;3.#include 46)main(){inti;for(i=2;i<=5;i++)printf(“%d!=%d 47”,i,fac(i));)輸出結(jié)果:2!=23!=64!=245!1204.#include 48",p);)該程序的輸出結(jié)果是:BCDCDD5.#include 49v,a); 50該程序的輸出結(jié)果是:12344.#include 51",num);}}輸出結(jié)果:125.#include 52”,x,y);8.#include 53for(j=0;j<4;j++)if(a[i][j] 54v,min,row,col);)輸出結(jié)果:-1,2,04.#include 5513.#include 56”,i,fac(i));)輸出結(jié)果:14.#include 57",p);)該程序的輸出結(jié)果是:15.#include 58",a);)該程序的輸出結(jié)果是:16.main(){inti,j,m,n;i=8;j=10;m=++i;n=j++;printf(""%d,%d,%d,%d”,i,j,m,n); 5914.main(){intx;x==fun(4);printf("%d 60",x);)fun(intn){ints;if((n==l)||(n==2))s=2;elses=n+fun(n-l);returns;)15.main(){inta[6]={4,7,1,3,9,2},i;invert(a,0,5);for(i=0;i<6;i++)printf(a%d,w,a[i]);printf(“ 61");)invert(ints[],inti,intj){intt;if(i<=j){t=s[i];s[i]=s[j];s[j]=t;i++;J一;))16.voidf(int*a,intb){staticintk=0;*a+=++k;b+=2;)若執(zhí)行i=2;j=4;f(&i,j);f(&j,i)后,i和j的值為5.main(){staticchara口二"ABCDEFGH”,b口二"ABCDefgH”char*pl,*p2;intk;pl=a;p2=b;for(k=0;k<7;k++){if(*(pl+k)==*(p2+k))printf(“枇”,*(pl+k));}20.main(){char*s2="IloveChina!”,**sl=&s2; 62char*s3,c,*s4=“z”;s3=&c;*s3=H;s2=s2+7;printf(a%s%c%s%c 63>>,s2,*s3,s4,**sl);21.有如下程序輸出23main(){intx=23;do{printf(,x-);}while(!x);)22.下面程序輸出的是chars[]="ABCD”;main(){char*p;for(p二s;p〈s+4;p++)printf("%s”,p);)23.以下程序的輸出結(jié)果是012345main(){intw=5;fun(w);printf(“ 64”);)fun(intk){if(k>0)fun(k-1);printf(”,k);)24.下面程序輸出的是816main(){intk=4,m=l,p;p=f(k,m);printf("%d,”,p);p=f(k,m);printf("%d”,p);f(inta,intb){staticintm=0,i=2;i+=m+l;m=i+a+b;returnm;) 6521.兩次運(yùn)行下面程序,如果從鍵盤上分別輸入6和4,則輸出結(jié)果是75main(){intx;scanf("%d",&x);if(x++>5)printf(“%d”,x);elseprintf(,x一);)22.#include 66v,num);})輸出結(jié)果:12323.#include 67f(y,&x);printf(H%d%d 68",x,y);)輸出結(jié)果:21.#include 69^^,min,row,col);)輸出結(jié)果:22.若有以下程序:main(){intk=2,i=2,m;m=(k+=i*=k);printf("%d,%d 70”,m,i);}執(zhí)行后的輸出結(jié)果是6,423.有以下程序#include 71{if(n==1)return1;elsereturnf(n-l)+l;)main(){inti,j=l;for(i=l;i<=3;i++)j*=f(i);printfCz%d 72,z,j);)程序運(yùn)行后的輸出結(jié)果是621.有以下程序main(){intaa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};inti,s=0;for(i=0;i<4;i++)s+=aa[i][i];printf(,z%d 73z,,s);}程序運(yùn)行后的輸出結(jié)果是2335,有以下程序8intfb(intx){returnx*x*x;}main(){inti;i=fb(2);printf(〃%d 74〃,i);}程序運(yùn)行后的輸出結(jié)果是36.有以下程序:#include 75v,num);))執(zhí)行后的輸出結(jié)果是12337.有如下程序main(){intx=5;do{printf("%d”,x-);}while(x);)該程序的執(zhí)行結(jié)果是54321 7636.運(yùn)行下面程序,如果從鍵盤上輸入5,則輸出結(jié)果是main(){intx;scanf("%d",&x);if(x++>5)printf("%d”,x);elseprintf(,x—);37.運(yùn)行下面程序#include 77”,x,y);)輸出結(jié)果是38.運(yùn)行下面程序#include 78,,,m,row,col);)輸出結(jié)果是39.#include”stdio.h"main()(intk;scanf(w%d”,&k);switch(k){case1:printf(w%d 79",k++);case2:printf("%d 80",k++);case3:printf(w%d 81”,k++);case4:printf("%d 82”,++k); 83break;default:printf("Full! 84");))從鍵盤輸入為3時(shí)屏幕上的輸出結(jié)果是:3536.inti,a[10];for(i=9;i>=0;i--)a[i]=10-i;printfC%d%d%d",a[2],a[5],a[8]);屏幕上的輸出結(jié)果是:85237.#include 85*x=3;*y=4;)main(){intx=l,y=2;fun(&y,&x);printfC%d%d〃,x,y);)屏幕上的輸出結(jié)果是:123436.#include 86",i,'A'+i);輸出結(jié)果:1:B2:C3:D4:E1.1.#include 87輸出結(jié)果:48.#include 88z,,i,f(i));輸出結(jié)果:49.#include 89inttO,tl,t;tO=O;tl=l;t=n;while(n>=2)(t=tO+tl;tO=tl;tl=t;n——;)returnt;3.有以下程序段:s=l.0;for(k=l;k<=n;k++)s=s+l.0/(k*(k+l));printf("%f 90",s);請(qǐng)?zhí)羁?,使下面的程序段的功能完全與之相同。s=0.0;d=l.0;k=0;do{s=s+d;K++;d=1.0/(k*(k+l));)while(k<=n);printf("%f 91",s);4.以下程序的功能是:通過指針操作,找出3個(gè)整數(shù)中的最小值并輸出#include 92",num);)5、用for循環(huán)打印147101316192225,其語句應(yīng)為:for(i=l;i<=9;i++)printf(_l+3*(i-l)_);6、程序A如下:intf(intn)(if(n<=l) 93returnn;elsereturnf(n-l)+f(n-2);)等價(jià)于程序B:intf(intn)(?t0=0;tl=l;t=n;while(){t=; 94tO=tl;tl=t;n一;return7.使輸入的一個(gè)字符串按反序存放,在主函數(shù)中輸入和輸出字符串。main(){charstr[100];scanf("%s”,str);inverse(str);printf("%s 95",str);)inverse(charc口){chart;inti,j;for(i=0,j=strlen(c);i 96while(*(a+num)!='\0')num++;while(b[n]){*(a+num)=b[n];num++;n=n+1;)returnnum;)7.以下程序的功能是:通過指針操作,找出3個(gè)整數(shù)中的最小值并輸出。main(){int*a,*b,*c,num,x,y,z;a=&x;b=&y,c=&z;scanf(a%d%d%d>,,a,b,c);num=*a;if(*a>*b)num=*b;if(num>*c)num=*c;printf("num=%d 97",num);IL求1!+2!+3!+…+10!ttinclude 98k=sqrt(m);for(i=2;i<=k;i++)if(m%i==0)break;if(i>k)printf(〃%dyes 99〃,m);elseprintf("%dno 100〃,m);)13.下面程序段是把從終端讀入的一行字符作為字符串放在字符數(shù)組中,然后輸出。請(qǐng)?zhí)羁?。Sinclude“stdio.h"Sinclude'string.h〃main()(intm;chars[80],*t;for(m=0;m<79;m++)(s[m]=getchar();if(s[m]==, 101)break;)s[m]=<\0,;t=s;while(*t)putchar(*t++);)14.有以下程序段:s=l.0;for(k=l;k<=n;k++)s=s+l.0/(k*(k+l));printf(,s);請(qǐng)?zhí)羁眨瓜旅娴某绦蚨蔚墓δ芡耆c之相同。s=0.0;d=l.0;k=0;do{s=s+d;_k++;d=1.0/(k*(k+l));)while(_k<=n);printf("%f 102",s);1.1.程序的功能是:按順序讀入10名學(xué)生4門課程的成績(jī),計(jì)算出每位學(xué)生的平均分并輸出。 103請(qǐng)完成以下程序:(10分)main(){intn,k;floatscore,sum,ave;for(n=l;(1)n<=10;n++)(2){sum=0;for(k=l;k<=4;k++){scanf("%f”,&score);(3)sum=sum+score;}ave=sum/4.0;printf(zzN0%d:%f 104z/,n,ave);}}17,有以下程序段:s=l.0;for(k=l;k<=n;k++)s=s+l.0/(k*(k+1));printf("%f 105”,s);請(qǐng)?zhí)羁?,使下面的程序段的功能完全與之相同。s=0.0;d=l.0;k=0;do{s=s+d;d=1.0/(k*(k+1));)while();printf("%f 106",s);18.以下程序的功能是:通過指針操作,找出3個(gè)整數(shù)中的最小值并輸出#include 107?,,num);)五、編程題1.請(qǐng)寫出一個(gè)求十個(gè)數(shù)中最大數(shù)的程序。#include 108fdr(i=0;i<10;i++){if(*(p+i)>max)max=*(p+i);}printf("%d 109”,max);1.寫一個(gè)判斷?個(gè)數(shù)是否為素?cái)?shù)的函數(shù)(此題必須體現(xiàn)指針使用)。提示:定義函數(shù)intanswer(intno),只需告訴它一個(gè)整數(shù),它就會(huì)返回(return)一個(gè)整形值,0表示否,1表示是。#include 110for(i=l;i<=10;i++){for(j=l;j<=ll-i;j++){printf(;)printf(“ 111”);1.編寫程序求取n值的近似值并在顯示器輸出。以下為求n值的近似公式,要求近似值截?cái)嗟焦街械牡趎項(xiàng),n的值從鍵盤輸入。(nXn)/6=1+1/(2X2)+1/(3X3)++l/(nXn))#include 112n,pi);2.編寫程序,要求如下:從鍵盤上輸入若干學(xué)生(學(xué)生人數(shù)不超過1000)的成績(jī),計(jì)算出平均成績(jī),并輸出低于平均成績(jī)的學(xué)生成績(jī),用輸入負(fù)數(shù)結(jié)束輸入。Sinclude 113ttdefineSIZE10main(){intx[SIZE],i,min=0;printf(”請(qǐng)輸入十個(gè)數(shù):");for(i=0;i<10;i++)scanf(H%dn,&x[i]);for(i=0;i<10;i++)(if(x(ij 114”,min);)6.從鍵盤輸入一個(gè)數(shù)x,求1到x的累加和。注:要求在main函數(shù)中調(diào)用求累加和函數(shù)fun。floatfun(intn)(inti;floatsum=0;for(i=l;i<=n;i++)sum=sum+i;returnsum;Sinclude 115n);scanf("%d",&x);printfC%f 116z/,fun(x));)7,請(qǐng)編寫出一個(gè)程序,輸出1-300之間同時(shí)被3和7整除的數(shù)之和。ttinclude 117n,sum);)8,下面findmax函數(shù)將找出數(shù)字中的最大元素及下標(biāo)值和地址值。請(qǐng)按下編寫*findmax()函數(shù)。*findmax(int*s,intt,int*k)( 118inti,*p;*k=0;p=&s[0];for(i=l;i 119w,a[k],k,add);S=1d+-+???+—9.編寫程序計(jì)算2!3!川的前n項(xiàng)之和。#include 120");scanf(,&n);s=0;jc=l;for(i=l;i<=n;i++)(jc=jc*i;s=s+l.0/jc;}printf("s二%If 121”,s);)10.編程,先輸入一整數(shù)n,輸出從1到n的奇數(shù)之和和偶數(shù)之和。ttinclude 122"); 123scanf("%d”,&n);suml=sum2=0;for(i=l;i<=n;i++){if(i%2==0)suml=suml+i;elsesum2=sum2+i;)printf(asuml=%d,sum2=%d 124w,suml,sum2);)1、有一函數(shù):x 125v);scanf("%lf",&x);if(x 126,,,y);)10.輸入3個(gè)整數(shù),按由大到小的順序輸出(指針方法)#include 127ttinclude 128M,sum);}11.下面findmax函數(shù)將找出數(shù)字中的最大元素及下標(biāo)值和地址值。請(qǐng)按下編寫?findmax()函數(shù)。*findmax(int*s,intt,int*k)(inti,*p;*k=0;P=&s[0];for(i=l;i 129add=findmax(a,10,&k);printf(a%d,%d,%0 130M,a[k],k,add);)16.求分?jǐn)?shù)序列:2/1,3/2,5/3,8/5,13/8,21/13,的前20項(xiàng)之和。#include 131w,sum);
此文檔下載收益歸作者所有