《C語言基礎(chǔ)》專升本各章節(jié)客觀題練習(xí)匯總

上傳人:痛*** 文檔編號:134706758 上傳時間:2022-08-13 格式:PDF 頁數(shù):18 大?。?10.99KB
收藏 版權(quán)申訴 舉報 下載
《C語言基礎(chǔ)》專升本各章節(jié)客觀題練習(xí)匯總_第1頁
第1頁 / 共18頁
《C語言基礎(chǔ)》專升本各章節(jié)客觀題練習(xí)匯總_第2頁
第2頁 / 共18頁
《C語言基礎(chǔ)》專升本各章節(jié)客觀題練習(xí)匯總_第3頁
第3頁 / 共18頁

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《《C語言基礎(chǔ)》專升本各章節(jié)客觀題練習(xí)匯總》由會員分享,可在線閱讀,更多相關(guān)《《C語言基礎(chǔ)》專升本各章節(jié)客觀題練習(xí)匯總(18頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、1C 語言基礎(chǔ)專升本各章節(jié)客觀題練習(xí)匯總第一章 C 語言基礎(chǔ)一、選擇題1、算法具有五個特性,以下選項中不屬于算法特性的是A)有窮性 B)簡潔性 C)可行性 D)確定性2、一個算法應(yīng)該具有“確定性”等 5 個特性,下面對另外 4 個特性的描述中錯誤的是 A)有零個或多個輸入 B)有零個或多個輸出 C)有窮性 D)可行性3、用 C 語言編寫的代碼程序A)可立即執(zhí)行 B)是一個源程序 C)經(jīng)過編譯即可執(zhí)行 D)經(jīng)過編譯解釋才能執(zhí)行4、結(jié)構(gòu)化程序由三種基本結(jié)構(gòu)組成,三種基本結(jié)構(gòu)組成的算法A)可以完成任何復(fù)雜的任務(wù) B)只能完成部分復(fù)雜的任務(wù) C)只能完成符合結(jié)構(gòu)化的任務(wù) D)只能完成些簡單的任務(wù) 5、

2、以下敘述中正確的是A)C 語言比其他語言高級B)C 語言可以不用編譯就能被計算機識別執(zhí)行C)C 語言以接近英語國家的自然語言和數(shù)學(xué)語言作為語言的表達(dá)形式D)C 語言出現(xiàn)的最晚,具有其他語言的一切優(yōu)點6、C 語言中用于結(jié)構(gòu)化程序設(shè)計的三種基本結(jié)構(gòu)是A)順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu) B)if、switch、break C)for、while、do-while D)if、for、continue第二章 數(shù)據(jù)類型和運算符一、選擇題1、以下敘述中錯誤的是A)用戶所定義的標(biāo)識符允許使用關(guān)鍵字B)用戶所定義的標(biāo)識符應(yīng)盡量做到“見名知意”C)用戶所定義的標(biāo)識符必須以字母或下劃線開頭D)用戶定義的標(biāo)識符中,大、

3、小寫字母代表不同標(biāo)識2、以下敘述中錯誤的是 A)C 語句必須以分號結(jié)束 B)復(fù)合語句在語法上被看作一條語句 C)空語句出現(xiàn)在任何位置都不會影響程序運行 D)賦值表達(dá)式末尾加分號就構(gòu)成賦值語句3、以下關(guān)于函數(shù)的敘述中正確的是 A)每個函數(shù)都可以被其它函數(shù)調(diào)用(包括 main 函數(shù))B)每個函數(shù)都可以被單獨編譯 C)每個函數(shù)都可以單獨運行 D)在一個函數(shù)內(nèi)部可以定義另一個函數(shù)以下不能定義為用戶標(biāo)識符的是2A)MainB)_0C)_intD)sizeof5、以下選項中,不能作為合法常量的是A)1.234e04B)1.234e0.4C)1.234e+4D)1.234e06、以下能正確定義且賦初值的語句

4、是 A)int n1=n2=10;B)char c=32;C)float f=f+1.1;D)double x=12.3E2.5;7、以下程序的功能是:給 r 輸入數(shù)據(jù)后計算半徑為 r 的圓面積 s。程序在編譯時出錯。main()/*Beginning*/int r;float s;scanf(%d,&r);s=*p*r*r;printf(s=%fn,s);出錯的原因是 A)注釋語句書寫位置錯誤 B)存放圓半徑的變量 r 不應(yīng)該定義為整型 C)輸出語句中格式描述符非法 D)計算圓面積的賦值語句中使用了非法變量8、設(shè)有定義:int k=1,m=2;float f=7;,則以下選項中錯誤的表達(dá)式是

5、 A)k=k=k B)-k+C)k%int(f)D)k=f=m以下符合 C 語言語法的實型常量是A)1.2E0.5 B)3.14.159E C).5E-3 D)E1510、以下 4 組用戶定義標(biāo)識符中,全部合法的一組是A)_main B)If C)txt D)int enclude -max REAL k_2 sin turbo 3COM _00111、若以下選項中的變量已正確定義,則正確的賦值語句是A)x1=26.8%3 B)1+2=x2 C)x3=0 x12 D)x4=1+2=3;12、以下定義語句中正確的是A)char a=Ab=B;B)float a=b=10.0;C)int a=10

6、,*b=&a;D)float*a,b=&a;下列選項中,不能用作標(biāo)識符的是A)_1234_B)_1_2 C)int_2_ D)2_int_有以下定義語句 double a,b;int w;long c;若各變量已正確賦值,則下列選項中正確的表達(dá)式是A)a=a+b=b+B)w%(int)a+b)C)(c+w)%(int)a D)w=a=b;15、下列關(guān)于單目運算符+、-的敘述中正確的是A)它們的運算對象可以是任何變量和常量 B)它們的運算對象可以是 char型變量和 int 型變量,但不能是 float 型變量 C)它們的運算對象可以是 int型變量,但不能是 double 型變量和 float

7、 型變量 D)它們的運算對象可以是 char 型變量、int 型變量和 float 型變量16、以下敘述中正確的是A)C 程序中注釋部分可以出現(xiàn)在程序中任意合適的地方B)花括號“”和“”只能作為函數(shù)體的定界符3C)構(gòu)成 C 程序的基本單位是函數(shù),所有函數(shù)名都可以由用戶命名D)分號是 C 語句之間的分隔符,不是語句的一部分17、以下選項中可作為 C 語言合法整數(shù)的是A)10110B B)0386 C)0Xffa D)x2a218、若有定義:int a=8,b=5,C;,執(zhí)行語句 C=a/b+0.4;后,c 的值為A)1.4 B)1 C)2.0 D)219、若變量 a 是 int 類型,并執(zhí)行了語

8、句:a=A+1.6;,則正確的敘述是A)a 的值是字符 C B)a 的值是浮點型 C)不允許字符型和浮點型相加 D)a的值是字符A的 ASCII 值加上 1。20、以下選項中不屬于 C 語言的類型的是A)signed short imt B)unsigned long int C)unsigned int D)long short第三章 順序結(jié)構(gòu)程序設(shè)計一、選擇題1、有以下程序main()int m,n,p;scanf(m=%dn=%dp=%d,&m,&n,&p);printf(%d%d%dn,m,n,p);若想從鍵盤上輸入數(shù)據(jù),使變量 m 中的值為 123,n 中的值為 456,p 中的值為

9、 789,則正確的輸入是A)m=123n=456p=789 B)m=123 n=456 p=789C)m=123,n=456,p=789D)123 456 7892、以下 4 個選項中,不能看作一條語句的是A);B)a=0,b=0,c=0;C)if(a0);D)if(b=0)m=1;n=2;3、有以下程序main()int a=666,b=888;printf(%dn,a,b);程序運行后的輸出結(jié)果是A)錯誤信息 B)666 C)888 D)666,888 4、有以下程序main()unsigned int a;int b=-1;a=b;printf(%u,a);程序運行后的輸出結(jié)果是A)-1

10、 B)65535 C)32767 D)-327685、若有以下程序段(n 所賦的是八進制數(shù))int m=32767,n=032767printf(%d,%o/n,m,n);執(zhí)行后輸出結(jié)果是 A)32767,32767B)32767,032767C)32767,77777D)32767,0777776、若有以下程序段4int m=0 xabc,n=0 xabc;m-=n;printf(%Xn,m);執(zhí)行后輸出結(jié)果是 A)0X0 B)0 x0C)0 D)0XABC7、有以下程序段int m=0,n=0;char c=a;scanf(%d%c%d,&m,&c,&n);printf(%d,%c,%dn

11、,m,c,n);若從鍵盤上輸入:10A10,則輸出結(jié)果是:A)10,A,10B)10,a,10C)10,a,0 D)10,A,08、有定義語句:int x,y;,若要通過 scanf(%d,%d,&x,&y);語句使變量x 得到數(shù)值 11,變量 y 得到數(shù)值 12,下面四組輸入形式中,錯誤的是A)11 12回車 B)11,12回車C)11,12回車 D)11,回車12回車9、設(shè)有如下程序段:int x=2002,y=2003;printf(%dn,(x,y);則以下敘述中正確的是A)輸出語句中格式說明符的個數(shù)少于輸出項的個數(shù),不能正確輸出 B)運行時產(chǎn)生出錯信息C)輸出值為 2002 D)輸出

12、值為 200310、設(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;第四章 選擇結(jié)構(gòu)程序設(shè)計一、選擇題1、有以下程序main()int i=1,j=2,k=3;if(i+=1&(+j=3|k+=3)printf(%d%d%dn,i,j,k);程序運行后的輸出結(jié)果是A)1 2 3B)2 3 4C)2 2 3D)2 3 33、若 x 和 y 代表整型數(shù),以

13、下表達(dá)式中不能正確表示數(shù)學(xué)關(guān)系|x-y|10的是A)abs(x-y)-10&x-y10 C)(x-y)10 D)(x-y)*(x-y)100 4、下列條件語句中,功能與其他語句不同的是A)if(a)printf(%dn,x);else printf(%dn,y);B)if(a=0)printf(%dn,y);else printf(%dn,x);C)if(a!=0)printf(%dn,x);else printf(%dn,y);D)if(a=0)printf(%dn,x);else printf(%dn,y);55、有定義語句:int a=1,b=2,c=3,x;則以下選項中各程序段執(zhí)行后,

14、x 的值不為 3 的A)if(ca)x=1;B)if (a3)x=3;C)if(a3)x=3;D)if (ab)x=b;else if(ba)x=2;else if(a2)x=2;if(a2)x=2;if (bc)x=c;else x=3;else x=1;if(a1)x=1;if (c0)y=1;B)y=0;C)y=0;D)if(x=0)else if(x=0)y=0;if(x0)y=1;if(x=0);if(x0)y=1;else y=-1;else if(x0)y=1;else y=0;else y=-1;else y=-1;8、以下程序的輸出結(jié)果是 main()int a=5,b=4,

15、c=6,d;printf(%dn,d=ab?(ac?a:c):(b);A)5 B)4 C)6 D)不確定9、有以下程序main()inta=5,b=4,c=3,d=2;if(abc)printf(%dn,d);else if(c-1=d)=1)printf(%dn,d+1);else printf(%dn,d+2);執(zhí)行后輸出結(jié)果是 A)2 B)3 C)4 D)編譯時有錯,無結(jié)果10、以下程序的輸出結(jié)果是 main()int a=4,b=5,c=0,d;d=!a&!b|!c;printf(%dn,d);A)1 B)0 C)非 0 的數(shù) D)-1第五章 循環(huán)結(jié)構(gòu)程序設(shè)計一、選擇題1 以下程序的輸

16、出結(jié)果是()。main()int n=4;while(n-)printf(%d,-n);A.20 B.31 C.321 D.2102 以下程序的輸出結(jié)果是()。main()int x=10,y=10,i;for(i=0;x8;y=+i)printf(%d%d,x-,y);A.10192 B.9876 C.10990 D.1010913 當(dāng)執(zhí)行以下程序段時。x=-1;do x=x*x;while(!x);A.循環(huán)體將執(zhí)行一次B.循環(huán)體將執(zhí)行兩次C.循環(huán)體將執(zhí)行無數(shù)多次 D.系統(tǒng)將提示有語法錯誤4 執(zhí)行以下程序后輸出的結(jié)果是()。main()int y=10;doy-;while(-y);prin

17、tf(%dn,y-);A.-1B.1C.8D.05 下面程序的輸出結(jié)果是()。main()int x=3,y=6,a=0;while(x+!=(y-=1)a+=1;if(yx)break;printf(x=%d,y=%d,a=%dn,x,y,a);A.x=4,y=4,a=1 B.x=5,y=5,a=1 C.x=5,y=4,a=3 D.x=5,y=4,a=16若 i,j 已定義為 int 類型,則以下程序段中內(nèi)循環(huán)的總的執(zhí)行次數(shù)是()。for(i=5;i;i-)for(j=0;j100)break;B.for(;);C.int k=1000;do+k;while(k=10000);D.int s

18、=36;while(s);-s;9列程序運行的情況是()。main()int i=1,sum=0;while(i10)sum=sum+1;i+;printf(i=%d,sum=%d,i,sum);A.i=10,sum=9 B.i=9,sum=9 C.i=2,sum=1 D.運行出現(xiàn)錯誤10有以下語句:i=1;for(;i=100;i+)sum+=i;與以上語句序列不等價的有()。A.for(i=1;i+)sum+=i;if(i=100)break;B.for(i=1;i=100;)sum+=i;i+;C.i=1;for(;i=100;)sum+=i;6D.i=1;for(;)sum+=i;if

19、(i=100)break;i+;11下面程序的運行結(jié)果為()。main()int n;for(n=1;n=10;n+)if(n%3=0)continue;printf(%d,n);A.12457810 B.369 C.12 D.1234567891012下面程序的運行結(jié)果是()。main()int x,y,z;x=0;y=z=-1;x+=-z-y;printf(x=%dn,x);A.x=4 B.x=0 C.x=2 D.x=313標(biāo)有/*/的語句的執(zhí)行次數(shù)是()。int y,i;for(i=0;i0|E0)C.(E=0)D.(E!=0)16假定所有變量均已正確定義,下列程序段運行后 x 的值為(

20、)。k1=1;k2=2;k3=3;x=15;if(!k1)x-;else if(k2)if(k3)x=4;else x=3;A.14 B.4 C.15 D.317執(zhí)行下面語句的輸出為()。int i=-1;if(i=0)printf(“*n”);else printf(“%n”);A.*B.%C.%c D.有錯,執(zhí)行不正確18在 C 語言中,為了結(jié)束 while 語句構(gòu)成的循環(huán),while 后一對圓括號中表達(dá)式的值應(yīng)該為()。A.0 B.1 C.true D.非 019 在 C 語言中,為了結(jié)束由 do-while 語句構(gòu)成的循環(huán),while 后一對圓括號中表達(dá)式的值應(yīng)為()。A.0 B.1

21、C.true D.非 020C 語言的 if 語句嵌套時,if 與 else 的配對關(guān)系是()。A.每個 else 總是與它上面的最近的 if 配對B.每個 else 總是與最外的 if 配對C.每個 else 與 if 的配對是任意的D.每個 else 總是與它上面的 if 配對21下列程序的輸出為()。#includemain()int i=0,j=0,a=6;if(+i0)|(+j0)a+;printf(i=%d,j=%d,a=%dn,i,j,a);i=0,j=0,a=6 B.i=1,j=1,a=7 C.i=1,j=0,a=7 D.i=0,j=1,a=7循環(huán)(第二部分)一、選擇題1下列符

22、號中,不屬于轉(zhuǎn)義字符的是()。A B0 xAA Ct D02已知大寫字母 A 的 ASCII 碼值是 65,小寫字母 a 的 ASCII 碼是 97,則用八進制表示的字符常量101是()。A字符 A B字符 a C字符 c D非法的常量3以下選項中,合法轉(zhuǎn)義字符的選項是()。A B 018 C xab D abc4以下選項中,正確的字符常量是()。A”F”B C W D 5 已知字母 A 的 ASCII 碼為十進制數(shù) 65,且S 為字符型,則執(zhí)行語句 S=A+6-3;后,S 中的值為()。A D B68 C不確定的值 D C6若有說明語句:char s=72;則變量 s()。A包含一個字符 B

23、包含兩個字符C包含三個字符 D說明不合法,s 的值不確定7已知 s 是字符型變量,下面不正確的賦值語句是()。As=012;Bs=u+v;Cs=1+2;Ds=1+2;8已知 s 是字符型變量,下面正確的賦值語句是()。As=abc;Bs=08;Cs=xde;Ds=”;9putchar 函數(shù)可以向終端輸出一個()。A整型變量表達(dá)式值 B字符串C實型變量值。D字符或字符型變量值。10有如下程序段:int x1,x2;7char y1,y2;scanf(”%d%c%d%c”,&x1,&y1,&x2,&y2);若要求 x1、x2、y1、y2 的值分別為10、20、A、B,正確的數(shù)據(jù)輸入是()。(注:代

24、表空格)A10A20B B10A20BC.10 A20B D10A20B11有如下程序,若要求 x1、x2、y1、y2 的值分別為 10、20、A、B,正確的數(shù)據(jù)輸入是()。(注:代表空格)int x1,x2;char y1,y2;scanf(”%d%d”,&x1,&x2);scanf(”%c%c”,&y1,&y2);A1020AB B1020ABCC1020 D1020ABAB12根據(jù)下面的程序及數(shù)據(jù)的輸入和輸出形式,程序中輸入語句的正確形式應(yīng)該為()。#include”stdio.h”main()char s1,s2,s3;輸入語句;printf(”%c%c%c”,s1,s2,s3);輸入

25、形式:ABC(注:代表空格)輸出形式:ABAscanf(”%c%c%c”,&s1,&s2,&s3);Bscanf(”%c%c%c”,&s1,&s2,&s3);Cscanf(”%c,%c,%c”,&s1,&s2,&s3);Dscanf(”%c%c”,&s1,&s2,&s3);13判斷 char 型變量 s 是否為小寫字母的正確表達(dá)式是()。A a=s=a)&(s=a)&(s=z)D(a=s)14運行以下程序后,如從鍵盤上輸入 china#,則輸出為()。#include”stdio.h”main()int v1=0,v2=0;char ch;while(ch=getchar()!=#)switc

26、h(ch)case a:case h:default:v1+;case o:v2+;printf(”%d,%dn”,v1,v2);A2,0 B5,0 C5,5 D2,515.有以下程序,若輸入為字符 s,則程序運行結(jié)果為()。#include”stdio.h”main()char ch;ch=getchar();switch(ch)case a:printf(”a=%cn”,ch);default:printf(”end!n”);case b:printf(”b=%cn”,ch);case c:printf(”c=%cn”,ch);Aend!Bend!C有語法錯誤 Da=sb=s end!c=

27、s16若輸入 B,以下程序的運行結(jié)果為()。main()char grade;scanf(%c,&grade);switch(grade)caseA:printf(=85.);caseB:caseC:printf(=60.);caseD:printf(=85.B.=60.C.=60.60.error.D.error.17下列程序的輸出是()。#includemain()int i;char c;for(i=0;i=5;i+)c=getchar();putchar(c);程序執(zhí)行時從第一列開始輸入以下數(shù)據(jù),代表換行符。uwxstaA.uwxsta B.u C.u D.u w w w x xs x

28、s8第六章 函數(shù)函數(shù)部分一、選擇題1 C 語言是由()構(gòu)成。A.主程序和子程序 B.主函數(shù)和若干子函數(shù)C.一個主函數(shù)和一個其他函數(shù) D.主函數(shù)和子程序2 以下說法中正確的是()。A.C 語言程序總是從第一個的函數(shù)開始執(zhí)行B.在 C 語言程序中,要調(diào)用的函數(shù)必須在 main()函數(shù)中定義C.C 語言程序總是從 main()函數(shù)開始執(zhí)行D.C 語言程序中的 main()函數(shù)必須放在程序的開始部分3 以下對 C 語言函數(shù)的有關(guān)描述中,正確的是()。A.調(diào)用函數(shù)時,只能把實參的值傳送給形參,形參的值不能傳送給實參B.C 函數(shù)既可以嵌套定義又可以遞歸調(diào)用C.函數(shù)必須有返回值,否則不能使用函數(shù)D.C 程序

29、中有調(diào)用關(guān)系的所有函數(shù)必須放在同一個源程序文件中4 C 語言程序中,當(dāng)函數(shù)調(diào)用時()。A.實參和形參各占一個獨立的存儲單元B.實參和形參共用一個存儲單元C.可以由用戶指定是否共用存儲單元D.計算機系統(tǒng)自動確定是否共用存儲單元 5 關(guān)于 return 語句,下列正確的說法是()。A.在主函數(shù)和其他函數(shù)中均要出現(xiàn)B.必須在每個函數(shù)中出現(xiàn)C.可以在同一個函數(shù)中出現(xiàn)多次D.只能在除主函數(shù)之外的函數(shù)中出現(xiàn)一次6 一個函數(shù)返回值的類型是由()決定的。A.return 語句中表達(dá)式的類型B.在調(diào)用函數(shù)時臨時指定C.定義函數(shù)時指定的函數(shù)類型D.調(diào)用該函數(shù)的主調(diào)函數(shù)的類型7 在 C 語言的函數(shù)中,下列正確的說法

30、是()。A.必須有形參 B.形參必須是變量名C.可以有也可以沒有形參 D.數(shù)組名不能作形參8 以下描述正確的是()。A.函數(shù)調(diào)用可以出現(xiàn)在執(zhí)行語句或表達(dá)式中B.函數(shù)調(diào)用不能作為一個函數(shù)的實參C.函數(shù)調(diào)用可以作為一個函數(shù)的形參D.以上都不正確9 在調(diào)用函數(shù)時,如果實參是簡單變量,它與對應(yīng)形參之間的數(shù)據(jù)傳遞方式是()。A.地址傳遞 B.單向值傳遞 C.由實參傳給形參,再由形參傳回實參 D.傳遞方式由用戶指定10若有以下程序#include void f(int n);main()void f(int n);f(5);void f(int n)printf(%dn,n);則以下敘述中不正確的是()。

31、A.若只在主函數(shù)中對函數(shù) f 進行說明,則只能在主函數(shù)中正確調(diào)用函數(shù) fB.若在主函數(shù)前對函數(shù) f 進行說明,則在主函數(shù)和其后的其它函數(shù)中都可以正確調(diào)用函數(shù) fC.對于以上程序,編譯時系統(tǒng)會提示出錯信息:提示對 f 函數(shù)重復(fù)說明D.函數(shù) f 無返回值,所以可用 void 將其類型定義為無值型11以下所列的各函數(shù)首部中,正確的是()。A.void play(var:Integer,var b:Integer)B.void play(int a,b)C.void play(int a,int b)D.Sub play(a as integer,b as integer)12有如下函數(shù)調(diào)用語句fun

32、c(rec1,rec2+rec3,(rec4,rec5);該函數(shù)調(diào)用語句中,含有的實參個數(shù)是()。A.3 B.4 C.5 D.有語法錯13若有以下函數(shù)調(diào)用語句:fun(a+b,(x,y),fun(n+k,d,(a,b);在此函數(shù)調(diào)用語句中實參的個數(shù)是()。A.3 B.4 C.5 D.614以下函數(shù)值的類型是()。fun(float x)float y;y=3*x-4;return y;A.int B.不確定 C.void D.float15下列函數(shù)定義不正確的是()。A.int max()B.int max(x,y)int x,y,z;int x,y;z=xy?x:y;int z;z=xy?x

33、:y;return(z);C.int max(x,y)D.int max()int x,y,z;z=xy?x:y;return(z);916下列程序的運行結(jié)果是()。main()int i=3;printf(%d,%d,%dn,i,i+,i+);A.5,5,4 B.3,4,5 C.3,3,4 D.5,4,317以下程序的輸出結(jié)果是()。fun(int x,int y,int z)z=x*x+y*y;main()int a=31;fun(5,2,a);printf(%d,a);A.0 B.29 C.31 D.無定值18有如下程序int func(int a,int b)return(a+b);m

34、ain()int x=2,y=5,z=8,r;r=func(func(x,y),z);printf(%dn,r);該程序的輸出的結(jié)果是()。A.12 B.13C.14 D.1519有以下程序float fun(int x,int y)return(x+y);main()int a=2,b=5,c=8;printf(%3.0fn,fun(int)fun(a+c,b),a-c);程序運行后的輸出結(jié)果是()。A.編譯出錯 B.9C.21 D.9.0變量部分一、選擇1如果在一個函數(shù)的復(fù)合語句中定義了一個變量,則該變量()。A.只在該復(fù)合語句中有效,在該復(fù)合語句外無效 B.在該函數(shù)中任何位置都有效C.在

35、本程序的源文件范圍內(nèi)均有效 D.此定義方法錯誤,其變量為非法變量 2下列說法不正確的是()。A.主函數(shù) main 中定義的變量在整個文件或程序中有效B.不同函數(shù)中,可以使用相同名字的變量 C.形式參數(shù)是局部變量D.在一個函數(shù)內(nèi)部,可以在復(fù)合語句中定義變量,這些變量只在本復(fù)合語句中有效3在一個源程序文件中定義的全局變量的有效范圍是()。A.本源程序文件的全部范圍 B.一個 C 程序的所有源程序文件 C.函數(shù)內(nèi)全部范圍D.從定義變量的位置開始到源程序文件結(jié)束4以下敘述中不正確的是()。A.在不同的函數(shù)中可以使用相同名字的變量 B.函數(shù)中的形式參數(shù)是局部變量C.在一個函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)

36、有效D.在一個函數(shù)內(nèi)的復(fù)合語句中定義的變量在本函數(shù)范圍內(nèi)有效5如果要限制一個變量只能為本文件所使用,必須通()來實現(xiàn)。A.外部變量說明 B.靜態(tài)局部變量 C.靜態(tài)外部變量 D.局部變量說明6下列哪種數(shù)據(jù)不存放在動態(tài)存儲區(qū)中()。A.函數(shù)形參變量 B.局部自動變量 C.函數(shù)調(diào)用時的現(xiàn)場保護和返回地址 D.局部靜態(tài)變量7以下敘述中不正確的是()。A.函數(shù)中的自動變量可以賦初值,每調(diào)用一次,賦一次初值。B.在調(diào)用函數(shù)時,實在參數(shù)和對應(yīng)形參在類型上只需賦值兼容。C.外部變量的隱含類別是自動存儲類別。D.函數(shù)形參可以說明為 register 變量。8以下只有在使用時才為該類型變量分配內(nèi)存的存儲類說明是(

37、)。A.auto 和 staticB.auto 和 registerC.register 和 staticD.extern 和 register9C 語言中,函數(shù)值類型的定義可以缺省,此時函數(shù)值的隱含類型是()。A.void B.intC.float D.double10在 C 語言中,函數(shù)的隱含存儲類別是()。A.auto B.static C.extern D.無存儲類別11在 C 語言中,形參的缺省存儲類是()。A.auto B.register C.static D.extern第七章 指針一、選擇題1 若有說明:int a=2,*p=&a,*q=p;,則以下非法的賦值語句是()。A

38、p=q;B*p=*q;C a=*q;D q=a;2 若定義:int a=511,*b=&a;,則printf(%dn,*b);的輸出結(jié)果為:A 無確定值 B a 的地址 C 512 D 5113 已有定義int a=2,*p1=&a,*p2=&a;下面不能正確執(zhí)行的賦值語句是()。Aa=*p1+*p2;Bp1=a;Cp1=p2;D a=*p1*(*p2);4 變量的指針,其含義是指該變量的()。A 值 B 地址 C 名 D 一個標(biāo)志105 若有說明語句:int a,b,c,*d=&c;,則能正確從鍵盤讀入三個整數(shù)分別賦給變量 a、b、c 的語句是()。A scanf(%d%d%d,&a,&b,

39、d);B scanf(%d%d%d,a,b,d);C scanf(%d%d%d,&a,&b,&d);D scanf(%d%d%d,a,b,*d);6 若已定義 int a=5;下面對(1)、(2)兩個語句的正確解釋是()。(1)int*p=&a;(2)*p=a;A 語句(1)和(2)中的*p 含義相同,都表示給指針變量 p 賦值。B(1)和(2)語句的執(zhí)行結(jié)果,都是把變量 a 的地址值賦給指針變量p。C(1)在對 p 進行說明的同時進行初始化,使 p 指向 a;(2)變量 a 的值賦給指針變量 p。D(1)在對 p 進行說明的同時進行初始化,使 p指向 a;(2)將變量 a 的值賦予*p。7

40、若有語句 int*p,a=10;p=&a;下面均代表地址的一組選項是()。A a,p,*&a B&*a,&a,*p C*&p,*p,&a D&a,&*p,p8 若需要建立如圖所示的存儲結(jié)構(gòu),且已有說明 double*p,x=0.2345;則正確的賦值語句是()。A p=x;B p=&x;C*p=x;D*p=&x;10有如下語句:int m=6,n=9,*p,*q;p=&m;q=&n;如圖 1 所示,若要實現(xiàn)下圖所示的存儲結(jié)構(gòu),可選用的賦值語句是()。A*p=*q;B p=*q;C p=q;D*p=q;11以下程序中調(diào)用 scanf 函數(shù)給變量 a 輸入數(shù)值的方法是錯誤的,其錯誤原因是()。#i

41、nclude main()int*p,*q,a,b;p=&a;printf(input a:);scanf(%d,*p);A*p 表示的是指針變量 p 的地址B*p 表示的是變量 a 的值,而不是變量 a 的地址C*p 表示的是指針變量 p 的值D*p 只能用來說明 p 是一個指針變量12執(zhí)行以下程序后,a 的值為【1】,b 的值為【2】。#include main()int a,b,k=4,m=6,*p=&k,*q=&m;a=p=&m;b=(-*p)/(*q)+7;printf(a=%dn,a);printf(b=%dn,b);【1】A-1 B 1 C 0 D 4【2】A 5 B 6 C 7

42、 D 10第八章 數(shù)組數(shù)值數(shù)組部分一、選擇題1.以下關(guān)于數(shù)組的描述正確的是()。A.數(shù)組的大小是固定的,但可以有不同的類型的數(shù)組元素B.數(shù)組的大小是可變的,但所有數(shù)組元素的類型必須相同C.數(shù)組的大小是固定的,所有數(shù)組元素的類型必須相同D.數(shù)組的大小是可變的,可以有不同的類型的數(shù)組元素2.以下對一維整型數(shù)組 a 的正確說明是()。A.inta(10);B.intn=10,an;C.int n;D.#define SIZE10scanf(%d,&n);int an;int aSIZE;3.在 C 語言中,引用數(shù)組元素時,其數(shù)組下標(biāo)的數(shù)據(jù)類型允許是()。A.整型常量 B.整型表達(dá)式C.整型常量或整型

43、表達(dá)式 D.任何類型的表達(dá)式4.以下對一維數(shù)組 m 進行正確初始化的是()。A.int m10=(0,0,0,0);B.int m10=;C.int m=0;D.int m10=10*2;5.若有定義:int bb 8;。則以下表達(dá)式中不0.2345pxmpnqpmqn11能代表數(shù)組元 bb1的地址的是()。A.&bb0+1 B.&bb1 C.&bb0+D.bb+16.假定 int 類型變量占用兩個字節(jié),其有定義:int x10=0,2,4;,則數(shù)組 x 在內(nèi)存中所占字節(jié)數(shù)是()。A.3 B.6 C.10 D.207.以下程序段給數(shù)組所有的元素輸入數(shù)據(jù),請選擇正確答案填入()。#include

44、main()int a10,i=0;while(i10)scanf(%d,_);A.a+(i+)B.&ai+1 C.a+i D.&a+i8.執(zhí)行下面的程序段后,變量 k 中的值為()。int k=3,s2;s0=k;k=s1*10;A.不定值 B.33 C.30 D.109.以下程序運行后,輸出結(jié)果是()。main()int n5=0,0,0,i,k=2;for(i=0;ik;i+)ni=ni+1;printf(%dn,nk);A.不確定的值 B.2 C.1 D.010.下列程序的主要功能是輸入 10 個整數(shù)存入數(shù)組 a,再輸入一個整數(shù) x,在數(shù)組 a 中查找 x。找到則輸出 x 在 10 個

45、整數(shù)中的序號(從 1 開始);找不到則輸出 0。程序缺少的是()。main()int i,a10,x,flag=0;for(i=0;i10;i+)scanf(%d,&ai);scanf(%d,&x);for(i=0;i2!1 D.a2012.若有定義:int b34=0;則下述正確的是()。A.此定義語句不正確 B.沒有元素可得初值 0C.數(shù)組 b 中各元素均為 0D.數(shù)組 b 中各元素可得初值但值不一定為 013.若有以下數(shù)組定義,其中不正確的是()。A.int a23;B int b3=0,1,2,3;C.int c100100=0;D.int d3=1,2,1,2,3,1,2,3,4;1

46、4.若有以下的定義:int t54;能正確引用 t 數(shù)組的表達(dá)式是()。A.t24 B.t50 C.t00 D.t0,015.在定義 int m 3=1,2,3,4,5,6;后,m10的值是()。A.4 B.1 C.2 D.516.在定義 int n56后第 10 個元素是()。A.n25 B.n24 C.n13 D.n1417.若二維數(shù)組 c 有 m 列,則計算任一元素 cij在數(shù)組中的位置的公式為()。(假設(shè) c00位于數(shù)組的第一個位置)A.i*m+j B.j*m+i C.i*m+j-1 D.i*m+j+118.若有以下定義語句,則表達(dá)式“x11*x22”的值是()。float x33=1

47、.0,2.0,3.0,4.0,5.0,6.0;A.0.0 B.4.0 C.5.0 D.6.0 19.以下程序運行后,輸出結(jié)果是()。main()int a44=1,3,5,2,4,6,3,5,7;printf(%d%d%d%dn,a03,a12,a21,a30);A.0650 B.1470 C.5430 D.輸出值不定20.以下程序運行后,輸出結(jié)果是()。main()int aa44=1,2,3,4,5,6,7,8,3,9,10,2,4,2,9,6;int i,s=0;for(i=0;i4;i+)s+=aai1;printf(“%dn”,s);A.11 B.19 C.13 D.2021.有以下

48、程序 main()int a33=1,2,3,4,5,6,i,j,s=0;for(i=1;i3;i+)for(j=0;j=i;j+)s+=aij;printf(%dn,s);該程序的輸出結(jié)果是()。A.18 B.19 C.20 D.2122.若定義如下變量和數(shù)組:int i;int x33=1,2,3,4,5,6,7,8,9;則下面語句的輸出結(jié)果是()。for(i=0;i3;i+)printf(%d,xi2-i);A.1 5 9 B.1 4 7 C.3 5 7 D.3 6 9 23若有以下定義和語句:int s45,(*ps)5;ps=s;則對 s 數(shù)組元素的正確引用形式是()。A ps+1B

49、*(ps+3)C ps02 D*(ps+1)+3字符數(shù)組部分一、選擇題1.若有以下說明:12 int a12=1,2,3,4,5,6,7,8,9,10,11,12;char c=a,d,g;則數(shù)值為 4 的表達(dá)式是()A.ag-c B.a4 C.ad-c D.ad-c2.下述對 C 語言字符數(shù)組的描述中錯誤的是()。A.字符數(shù)組可以存放字符串 B.字符數(shù)組中的字符串可以整體輸入、輸出C.可以在賦值語句中通過賦值運算符=對字符數(shù)組整體賦值D.不可以用關(guān)系運算符對字符數(shù)組中的字符串進行比較3.下述對 C 語言字符數(shù)組的描述中正確的是()。A.任何一維數(shù)組的名稱都是該數(shù)組存儲單元的開始地址,且其每個

50、元素按照順序連續(xù)占存儲空間B.一維數(shù)組的元素在引用時其下標(biāo)大小沒有限制C.任何一個一維數(shù)組的元素,可以根據(jù)內(nèi)存的情況按照其先后順序以連續(xù)或非連續(xù)的方式占用存儲空間D.一維數(shù)組的第一個元素是其下標(biāo)為 1 的元素4.不能把字符串:Hello!賦給數(shù)組 b 的語句是()。A.char str10=H,e,l,l,o,!;B.char str10;str=Hello!;C.char str10;strcpy(str,Hello!);D.char str10=Hello!;5.合法的數(shù)組定義是()。A.int a=string;B.int a5=0,1,2,3,4,5;C.int s=string;D.

51、char a=0,1,2,3,4,5;6.下列語句中,不正確的是()。A.static char a2=1,2;B.static char a2=1,2;C.static char a2=1,2,3;D.static char a2=1;7.若給出以下定義:char x=abcdefg;char y=a,b,c,d,e,f,g;則正確的敘述為()。A.數(shù)組 x 和數(shù)組 y 等價 B.數(shù)組 x 和數(shù)組 y 的長度相同C.數(shù)組 x 的長度大于數(shù)組 y 的長度 D.數(shù)組 x 的長度小于數(shù)組 y 的長度8.若有數(shù)組定義:char array =China;則數(shù)組 array 所占的空間為()。A.4

52、個字節(jié) B.5 個字節(jié) C.6 個字節(jié) D.7 個字節(jié)9.若有定義和語句:char s10;s=abcd;printf(%sn,s);則結(jié)果是(以下代表空格)()。A.輸出 abcd B.輸出 a C.輸出 abcdD.編譯不通過10.判斷兩個字符串是否相等,正確的表達(dá)方式是()。A.while(s1=s2)B.while(s1=s2)C.while(strcmp(s1,s2)=0)D.while(strcmp(s1,s2)=0)11.以下程序的輸出結(jié)果是()。main()char str12=s,t,r,i,n,g;printf(%dn,strlen(str);A.6 B.7 C.11 D.

53、1212.若有以下程序片段:char str=abn012;printf(%d,strlen(str);上面程序片段的輸出結(jié)果是()。A.3 B.4 C.6 D.1213.若有以下程序段,輸出結(jié)果是()。char s=141141abct;printf (%dn,strlen(s);A.9 B.12 C.13 D.1414.設(shè)有 static char str=Beijing;則執(zhí)行 printf(%dn,strlen(strcpy(str,China);后的輸出結(jié)果為()。A.5 B.7 C.12 D.1415.以下程序運行后,輸出結(jié)果是()。main()char cf35=AAAA,BBB

54、,CC;printf(%sn,ch1);A.AAAAB.BBB C.BBBCC D.CC16下面程序的功能是從輸入的十個字符串中找出最長的那個串。請在_處填空。#include stdio.h#include string.h#define N 10 main()char sN81,*t;int j;for(j=0;jN;j+)gets(sj);t=*s;for(j=1;jN;j+)if(strlen(t)strlen(sj)_;printf(the max length of ten strings is:%d,%sn,strlen(t),t);A t=sj B t=&sj C t=s+D

55、t=sj017下面判斷正確的是()。A char*s=girl;等價于 char*s;*s=girl;Bchar s10=girl;等價于 char s10;s10=girl;C char*s=girl;等價于 char*s;s=girl;D char s4=boy,t4=boy;等價于char s4=t4=boy18設(shè) char*s=ta017bc;則指針變量 s 指向的字符串所占的字節(jié)數(shù)是()。13A 9 B 5 C 6 D 719下面程序段中,for 循環(huán)的執(zhí)行次數(shù)是()。char*s=ta018bc;for(;*s!=0;s+)printf(*);A 9 B5 C6D 720以下不能正

56、確進行字符串賦初值的語句是()。A.char str5=good!;B char*str=good!;C.charstr=good!;D.char str5=g,o,o,d;21下面程序段的運行結(jié)果是()。char*s=abcde;s+=2;printf(%d,s);A.cdeB.字符cC字符c的地址 D無確定的輸出結(jié)果22設(shè)有如下的程序段:char s=girl,*t;t=s;則下列敘述正確的是()。A s 和 t 完全相同B 數(shù)組 s 中的內(nèi)容和指針變量 t 中的內(nèi)容相等C s 數(shù)組長度和 t 所指向的字符串長度相等D*t 與 s0相等23以下正確的程序段是()。A char s20;B

57、char*s;scanf(%s,&s);scanf(%s,s);C char s20;D char s20,*t=s;scanf(%s,&s2);scanf(%s,t2);24以下與庫函數(shù) strcpy(char*p,char*q)功能不相等的程序段是()。A.strcpy1(char*p,char*q)while(*p+=*q+)!=0);B.strcpy2(char*p,char*q)while(*p=*q)!=0)p+;q+;C.strcpy3(char*p,char*q)while(*p+=*q+);D.strcpy4(char*p,char*q)while(*p)*p+=*q+;25

58、下面程序段的運行結(jié)果是()。#include stdio.h main()char s=example!,*t;t=s;while(*t!=p)printf(%c,*t-32);t+;A EXAMPLE!B example!C EXAM D example!26以下正確的程序段是()。A char s=12345,t=6543d21;strcpy(s,t);B char s20,*t=12345;strcat(s,t);C char s20=,*t=12345;strcat(s,t);D char*s=12345,*t=54321;strcat(s,t);27以下與庫函數(shù) strcmp(cha

59、r*s,chat*t)的功能相等的程序段是()。A strcmp1(char*s,chat*t)for(;*s+=*t+;)if(*s=0)return 0;return(*s-*t);B strcmp2(char*s,char*t)for(;*s+=*t+;)if(!*s)return 0;return (*s-*t);C strcmp3(char*s,char*t)for(;*t=*s;)if(!*t)return 0;t+;s+;return(*s-*t);D strcmp4(char*s,char*t)for(;*s=*t;s+,t+)if(!*s)return 0;return(*t

60、-*s);28下面程序的功能是將字符串 s 的所有字符傳送到字符串 t 中,要求每傳遞三個字符后再存放一個空格,例如字符串 s 為abcdefg,則字符串 t 為abc def g,請選擇填空。#include stdio.h#include string.h main()int j,k=0;char s60,t100,*p;p=s;gets(p);while(*p)for(j=1;j=3&*p;【1】)tk=*p;if(【2】)tk=;k+;tk=0;puts(t);【1】A.p+B.p+,k+C.p+,k+,j+D.k+,j+【2】A j=4 B*p=0 C!*p D j!=429下面程序

61、的功能是將八進制正整數(shù)字符串轉(zhuǎn)換為十進制整數(shù)。請選擇填空。#include stdio.h#include string.hmain()char*t,s8;int n;t=s;gets(t);n=【1】;while(【2】!=0)n=n*8+*t-0;printf(%dn,n);【1】A0 B*t C*t-0 D*t+0【2】A*t B*t+C*(+t)14D t30下面程序的功能是在字符串 s 中找出最大的字符并放在第一個位置上,并將該字符前的原字符往后順序移動,如:boy&girl 變成 ybo&girl。請選擇填空。#include stdio.h#include string.hmai

62、n()char s80,*t,max,*w;t=s;gets(t);max=*(t+);while(*t!=0)if(maxs B t=s C*ts0 D*t=s0【2】A t+B s-C t-D w-31以下程序的功能是刪除字符串 s 中的所有空格(包括 TAB 符、回車符),請?zhí)羁铡?include stdio.h#include string.h#include ctype.h main()char s80;gets(s);delspace(s);puts(s);delspace(char*t)int m,n;char c80;for(m=0,n=0;【1】;m+)if(!isspace

63、(【2】)/*C 語言提供的庫函數(shù),用以判斷字符是否為空格*/cn=tm;n+;cn=0;strcpy(t,c);【1】A tm B!tm C tm=0 D tm=0【2】A t+m B*cm C*(t+m)D*(c+m)32下面程序的功能是統(tǒng)計字串 sub 在母串 s 中出現(xiàn)的次數(shù)。請選擇填空。#include stdio.h#include string.h main()char s80,sub80;int n;gets(s);gets(sub);printf(%dn,count(s,sub);int count(char*p,char*q)int m,n,k,num=0;for(m=0;

64、pm;m+)for(【1】,k=0;qk=pn;k+,n+)if(q【2】=0)num+;break;return(num);【1】A n=m+1 B n=m C n=0 D n=1【2】A k B k+C k+1 D+k33以下程序的輸出結(jié)果是()。#include stdio.hchar cchar(char ch)if(ch=A&ch=b1)strcpy(b2,pb);printf(%dn,strlen(b2);A 8 B 3 C 1 D 735有以下程序#include string.h#include stdio.hmain()char*p=abcde0fghjik0;printf(

65、%dn,strlen(p);程序運行后的輸出結(jié)果是()。A 12 B 15 C 6 D 536有以下程序void ss(char *s,char t)while(*s)if(*s=t)*s=t-a+A;s+;15main()char str100=abcddfefdbd,c=d;ss(str,c);printf(%sn,str1);程序運行后的輸出結(jié)果是()。AABCDDEFEDBD B abcDDfefDbD C abcAAfefAbA D Abcddfefdbd37以下程序調(diào)用 findmax 函數(shù)返回數(shù)組中的最大值。在下面劃線處應(yīng)填入的是()。#include stdio.hfindma

66、x(int*a,int n)int*p,*s;for(p=a,s=a;p-as B*p*sC apas D p-ap-s第九章 宏與位運算宏專題一、選擇題1 下面敘述中正確的是()。A.帶參數(shù)的宏定義中參數(shù)是沒有類型的 B.宏展開將占用程序的運行時間C.宏定義命令是 C 語言中的一種特殊語句 D.使用#include 命令包含的頭文件必須以“.h”為后綴2 下面敘述中正確的是()。A.宏定義是 C 語句,所以要在行末加分號 B.可以使用#undef 命令來終止宏定義的作用域C.在進行宏定義時,宏定義不能層層嵌套D.對程序中用雙引號括起來的字符串內(nèi)的字符,與宏名相同的要進行置換3 在“文件包含”預(yù)處理語句中,當(dāng)#include后面的文件名用雙引號括起時,尋找被包含文件的方式為()。A.直接按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索目錄B.先在源程序所在目錄搜索,若找不到,再按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索C.僅僅搜索源程序所在目錄 D.僅僅搜索當(dāng)前目錄4 下面敘述中不正確的是()。A.函數(shù)調(diào)用時,先求出實參表達(dá)式,然后帶入形參。而使用帶參的宏只是進行簡單的字符替換B.函數(shù)調(diào)用是在程序運行時處理的,分配臨時的內(nèi)存單

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

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!