C語言-基本選擇題及參考答案 (2)

上傳人:豆**** 文檔編號:43631810 上傳時間:2021-12-03 格式:DOC 頁數(shù):25 大?。?6.50KB
收藏 版權(quán)申訴 舉報 下載
C語言-基本選擇題及參考答案 (2)_第1頁
第1頁 / 共25頁
C語言-基本選擇題及參考答案 (2)_第2頁
第2頁 / 共25頁
C語言-基本選擇題及參考答案 (2)_第3頁
第3頁 / 共25頁

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

10 積分

下載資源

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

資源描述:

《C語言-基本選擇題及參考答案 (2)》由會員分享,可在線閱讀,更多相關(guān)《C語言-基本選擇題及參考答案 (2)(25頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、精品文檔,僅供學(xué)習(xí)與交流,如有侵權(quán)請聯(lián)系網(wǎng)站刪除 計算機(jī)程序設(shè)計基礎(chǔ)(C語言) 單項選擇練習(xí)題 一、基本概念 1. C語言程序是由 C 構(gòu)成的。 A)一些可執(zhí)行語言 B)main函數(shù) C)函數(shù) D)包含文件中的第一個函數(shù) 2.( A )是構(gòu)成C語言程序的基本單位。 A、函數(shù) B、過程 C、子程序 D、子例程 3.C語言程序從 C 開始執(zhí)行。 A) 程序中第一條可執(zhí)行語句 B) 程序中第一個函數(shù) C) 程序中的main函數(shù) D) 包含文件中的第一個函數(shù) 4.C語言程序從main

2、()函數(shù)開始執(zhí)行,所以這個函數(shù)要寫在_D___。 A) 程序文件的開始 B) 程序文件的最后 C) 它所調(diào)用的函數(shù)的前面 D) 程序文件的任何位置 5、以下說法中正確的是( C )。 A、C語言程序總是從第一個定義的函數(shù)開始執(zhí)行 B、在C語言程序中,要調(diào)用的函數(shù)必須在main( )函數(shù)中定義 C、C語言程序總是從main( )函數(shù)開始執(zhí)行 D、C語言程序中的main( )函數(shù)必須放在程序的開始部分 6. 下列方法中錯誤的是(D?。?。 A.主函數(shù)可以分為兩個部分:主函數(shù)說明部分和主函數(shù)體。 B.主函數(shù)可以調(diào)用任何非主函數(shù)

3、的其它函數(shù)。 C.任何非主函數(shù)可以調(diào)用其它任何非主函數(shù)。 D.程序可以從任何非主函數(shù)開始執(zhí)行。 7. 下列說法錯誤的是:( B ) A. C程序運(yùn)行步驟是編輯、編譯、連接、執(zhí)行。 B. C語言的變量名必須用小寫,常量用大寫。 C. C語言的三種基本結(jié)構(gòu)是順序、選擇、循環(huán)。 D. C程序一定由函數(shù)構(gòu)成的。 8.下列關(guān)于C語言的說法錯誤的是( B ) 。 A) C程序的工作過程是編輯、編譯、連接、運(yùn)行 B) C語言不區(qū)分大小寫。 C) C程序的三種基本結(jié)構(gòu)是順序、選擇、循環(huán) D) C程序從main函數(shù)開始執(zhí)行 9. 系統(tǒng)默認(rèn)的C語言源程序擴(kuò)展名為.C

4、,需經(jīng)過 C 之后,生成.exe文件,才能運(yùn)行? A) 編輯?編譯 B )編輯?連接 C) 編譯?連接 D) 編輯?改錯 10.下列說法中正確的是(B?。? A.由于C源程序是高級語言程序,因此一定要在TC軟件中輸入。 B.由于C源程序是由字符流組成的,因此可以作為文本文件在任何文本編輯的軟件中輸入。 C.由于C程序是高級語言程序,因此輸入后即可執(zhí)行。 D.由于C程序是高級語言程序,因此它是由命令組成的。 二、數(shù)據(jù)類型、運(yùn)算符與表達(dá)式 1. 不是C語言提供的合法關(guān)鍵字是(B )。 A.switch     B.cher     C.case 

5、    D.default 2.C語言提供的合法關(guān)鍵字是(D?。? A.next B.string C.do case D.default 3.下列不屬于C語言中關(guān)鍵字的是 B A)long B)print C)default D)typedef 4.下列正確的標(biāo)識符是(C?。? A.-a1 B.a[i] C.a2_i D.int t 5. 下列C語言用戶標(biāo)識符中合法的是( B )。 A、*y B、sum C、int

6、 D、%5f 6. 下面四個選項中,合法的標(biāo)識符是:( D ) A. auto B. define C. 6a D. c 7.下列C語言用戶標(biāo)識符中合法的是( B )。 A)3ax B)x C)case D)-e2 E)union 8. 以下選項中合法的用戶標(biāo)識符是 B A) long B) _2Test C) 3Dmax D) A.dat 9.下列四組選項中,正確的C語言標(biāo)識符是( C )。 A) %x B) a+b C) a123

7、 D) 123 10. 請選出可用作C語言用戶標(biāo)識符的一組標(biāo)識符( B ) A) void B) a3_b3 C) For D) 2a define _123 -abc DO WORD sum Case sizeof 11、下列四組字符串中都可以用作C語言程序中的標(biāo)識符的是( A )。 A、print _3d db8 aBc B、I\a

8、m one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 12.下列C語言標(biāo)識符中合法的變量名是 B 。 A)2e3 B)you C)*y D)float 13.C語言中的簡單數(shù)據(jù)類型包括(D )。 A、整型、實型、邏輯型 B、整型、實型、邏輯型、字符型 C、整型、字符型、邏輯型 D、整型、實型、字符型 14、下列可以正確表示字符型常量的是( A )。 A

9、、’\t’ B、”a” C、”\n” D、297 15.下列表達(dá)式中, D 是正確的C語言字符常量。 A)”x” B)e3 C)”COMPUTER” D)’#’ 16.在下列表達(dá)式中,屬于字符型常量的是 B 。 A) A B) a C) "A" D) b 17. 以下選項中合法的字符常量是( B )  A) “B” B) ‘\n’ C) ‘68’ D) E 18.下面字符常量表示錯誤的是( D ) A)’a’

10、B)’?’ C)’\n’ D)”\n” 19. 已定義c為字符型變量,則下列語句中正確的是 ( C ) A)c=97 B)c="97" C)c=‘a(chǎn)’ D)c="a" 20. 已知ch是字符型變量,不正確的賦值語句是( A ) A) ch=a+b ; B) ch= \0 ; C) ch= 7 ; D) ch=’;’; 21.C語言中字符型(char)數(shù)據(jù)在內(nèi)存中的存儲的是( D )   A) 原碼

11、 B) 補(bǔ)碼 C) 反碼 D) ASCII碼 22.在C語言中,字符型數(shù)據(jù)所占的內(nèi)存空間是( C ) A)2個字節(jié) B) 4字節(jié) C) 1字節(jié) D)由用戶自定義 *23.若int類型數(shù)據(jù)占2個字節(jié),則unsigned int類型數(shù)據(jù)的取值范圍是 ( B ) A)0~255 B)0~65535 C)-32768~32767 D)-256~255 *24. 若有以下類型說明語句:char a;int b; float c; double d; 則表達(dá)式a*b+d-c的結(jié)果類型為( D )

12、 A)float B) char C) int D)double *25. 若有以下類型說明語句:char w;int x;float y;double z;則表達(dá)式w-x*y/z的結(jié)果為( D )類型,表達(dá)式(int)(x+y-z*w)的結(jié)果為( C )類型。 A)float B)char C)int D)double 26 .C語言中運(yùn)算對象必須是整型的運(yùn)算符是( A ) A) %= B) / C) = D) 〈= 27.在C語言程序中,表

13、達(dá)式8/5的結(jié)果是( B ) A)1.6 B)1 C)3 D)0 28.設(shè)x為int型變量,則執(zhí)行以下語句后,x的值為 B x=10; x+=x; A) 10 B) 20 C) 40 D) 30 29.在C語言程序中,表達(dá)式5%2的結(jié)果是 C 。 A)2.5 B)2 C)1 D)3 30.如果int a=3,b=4;則條件表達(dá)式"a

14、 D) 1 31.若int x=2,y=3,z=4 則表達(dá)式x

15、 D、!((a

16、 D) ‘d’ 37.下列關(guān)于C語言的敘述錯誤的是( A ) A) 大寫字母和小寫字母的意義相同 B) 不同類型的變量可以在一個表達(dá)式中 C) 在賦值表達(dá)式中等號(=)左邊的變量和右邊的值可以是不同類型 D) 同一個運(yùn)算符號在不同的場合可以有不同的含義 38. 有:int w=11,x=12,y=3,m; 執(zhí)行下面語句后m的結(jié)果是( C ) m=(w

17、語句后m的值是( A ) m=(w>x)?w:x; m=(m>y)?m:y; A. 12 B. 0 C. 3 D. 1 40.設(shè)整型變量 a=2,則執(zhí)行下列語句后,浮點型變量b的值不為0.5的是( B?。? A.b=1.0/a B.b=(float)(1/a) C.b=1/(float)a D.b=1/(a*1.0) 41. 以下運(yùn)算符中優(yōu)先級最高的運(yùn)算符是( B ) A)&& B)++ C)+= D)!= 42.若“int n; float f=13.8;

18、”,則執(zhí)行“n=(int)f%3”后,n的值是(A) A.1 B.4 C.4.333333 D.4.6 43. 設(shè)x為int型變量,則執(zhí)行以下語句后,x的值為( C?。? x=10; x*=x; A) 10 B) 20 C) 100 D) 0 44. 若有語句int a=1,b; double y=2.3; b=(int)y; 則b的值為 (B )? A) 3 B) 2 C) 1 D) 2.3 45.已知int x;char y;則下面錯誤的scanf函數(shù)調(diào)用語句為(B )

19、 A)scanf(“%d,%d”,&x,&y); B) scanf(“%d,%c”,x,y) C) scanf(“%d%d”,&x,&y) D) scanf(“%d,%c”,&x,&y) 46.在C語言的庫函數(shù)中,可以輸出char型變量x值的語句是 C 。 A)getchar(x); B)fputc(x) C)putchar(x) D)puts(x) 47. 以下說法正確的是( C ) A) x+5是一個錯誤的表達(dá)式 B) C語言不允許類型的混合運(yùn)算 C) 強(qiáng)制類型轉(zhuǎn)換時,類型說明

20、符必須加括號 D) (int)x+y 和(int)(x+y)是完全等價的表達(dá)式 48.設(shè) int x=0, y=1; 表達(dá)式(x||y)的值是 ( B ) A) 0 B) 1 C) 2 D) -1 三、選擇結(jié)構(gòu) 1. 在C語言中,認(rèn)為( D )為邏輯"真" A) true B)大于0的數(shù) C)非0整數(shù) D)非0的數(shù) 2. 表示關(guān)系x<=y<=z的c語言表達(dá)式為 A A) (x<=y)&&(y<=z) B) (x<=y)AND(y

21、<=z) C) (x<=y<=z) D) (x<=y)&(y<=z) 3.能正確表示邏輯關(guān)系:“a≥=10或a≤0”的C語言表達(dá)式是( D ) A) a>=10 or a<=0 B) a>=0|a<=10 C) a>=10 &&a<=0 D) a>=10‖a<=0 4、判斷char型變量c1是否為大寫字母的表達(dá)式為( D )。 A、’A’<=c1<=’Z’ B、(c1>=’A’) & (c1<=’Z’) C、(’A’<=c1)AND (‘Z’>=c1) D、 c1>=’A’ && c1<=’Z

22、’ 5. 為表示邏輯表達(dá)式7979 )&&( X<90 ) B) ( X>79 )!=( X<90 ) C) 7979 )||( X<90 ) 6.設(shè)有語句“int a=2,b=3,c=-2,d=2;”,則邏輯表達(dá)式“a>0&&b&&c<0&&d>0”的值是( A ) A.1 B.0        C.-1 D.出錯 7. 設(shè)a為整型變量,則不能正確表達(dá)數(shù)學(xué)關(guān)系10<a<15的C語言表達(dá)式是(  A )。 A

23、.1010&&a<15 D.!(a<=10)&&!(a>=15) 8. 設(shè)x,t均為int型變量,則執(zhí)行語句“x=10;t=x&&x>10;”后,t的值為(D?。? A.不定值     B.10 C.1 D.0 9. 若int i=10; 執(zhí)行下列程序后,變量i的正確結(jié)果是( A )。 switch ( i ) { case 9: i+=1; case 10:

24、i+=1; case 11: i+=1; default : i+=1; } A、13 B、12 C、11 D、10 10. 在下面的條件語句中(其中s1和s2表示是C語言的語句),只有一個在功能上與其它三個語句不等價,它是( D )。 A、if (a) s1 ; else s2; B、if (a= =0) s2; else s1; C、 if (a!=0) s1; else s2; D、if (a= =0) s1; else s2; 11.假

25、定所有變量均已正確定義,則下列程序段運(yùn)行后y的值是(A?。?   int a=0,y=10; if(a=0) y--; else if(a>0) y++; else y+=y; A.20 B.11 C.9 D.0 12.假定所有變量均已正確定義,則下列程序段運(yùn)行后x的值是(B?。?。   a=b=c=0; x=35; if(!a) x--; else if(b); if(c) x=3; else x=4; A.34 B.4

26、 C.35 D.3 13. C語言對嵌套if語句的規(guī)定是:else語句總是與( D )配對。 A) 其之前最近的if B) 第一個if C) 縮進(jìn)位置相同的if D) 其之前最近的且尚未配對的if 14. 在C語言語句中,用來決定分支流程的表達(dá)式是( A?。? A.可用任意表達(dá)式       B.只能用邏輯表達(dá)式或關(guān)系表達(dá)式 C.只能用邏輯表達(dá)式      D.只能用關(guān)系表達(dá)式 15.C語言中用( B )表示邏輯“真”。 A. true B. 整數(shù)值1 C

27、. 非零整數(shù)值 D. false 16、若k是int型變量,且有下面的程序段: int k; k= -3; if (k<=0) printf(“####”); else printf(“&&&&”); 上面程序段的輸出結(jié)果是( A ) A、#### B、&&&& C、####&&&& D、有語法錯誤,無輸出結(jié)果 17. main() { int x=0,a=0,b=0; switch(x){ case 0: b++; case 1: a++; case 2: a++;b++;}

28、 printf(“a=%d,b=%d\n”,a,b);} 該程序的輸出結(jié)果是 D A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=2 18. 以下程序的輸出結(jié)果是:( C ) main() { int x=-10,y= 1,z=1; if(x

29、b=50,c=30; if(a>b) a=b; b=c; c=a; printf("a=%2d b=%2d c=%2d\n",a,b,c); A) a=10 b=50 c=10 B) a=10 b=30 c=10 C) a=50 b=30 c=10 D) a=50 b=30 c=50 四、循環(huán)結(jié)構(gòu) *1.在C語言中,下列說法中正確的是( D?。?。 A) do-while語句構(gòu)成的循環(huán)不能用其它語句構(gòu)成的循環(huán)來代替。 B) do-while語句構(gòu)成的循環(huán)只能用break語

30、句退出。 C) do-while語句構(gòu)成的循環(huán)在while后的表達(dá)式非零時結(jié)束循環(huán)。 D) do-while語句構(gòu)成的循環(huán),在while后的表達(dá)式為零時結(jié)束循環(huán)。 2. break語句不能出現(xiàn)在( D?。┱Z句中 A. switch B.for C. while D. if…else *3.對于break語句和continue語句的說法錯誤的是( B ) A) break語句不能用于循環(huán)語句和switch語句之外的任何其他語句中。 B) break和continue也可以用于if語句中 C) continue語句

31、只結(jié)束本次循環(huán),而不是終止整個循環(huán)的執(zhí)行。 D) break語句是結(jié)束整個循環(huán)過程,不再判斷執(zhí)行循環(huán)的條件是否成立。 4.語句while(!y);中的表達(dá)式!y等價于 A A)y==0 B)y?。? C)y=!0 D) y==1 5.若有“int a=1,x=1;”,則循環(huán)語句“while(a<10) x++; a++;”的循環(huán)執(zhí)行(A?。? A.無限次     B.不確定次    C.10次      D.9次 6. 有以下程序段 int k=0 while(k)k++; 則while循環(huán)體執(zhí)行的次數(shù)是 C A) 無限次

32、 B) 有語法錯,不能執(zhí)行 C) 一次也不執(zhí)行 D) 執(zhí)行1次 7. 下列循環(huán)語句中有語法錯誤的是( D ) A while(x=y) 5; B while(0) ; C do 2;while(x= =b); D do x++ while(x= =10); *8.當(dāng)運(yùn)行時輸入:abcd$abcde, 下面程序的運(yùn)行結(jié)果是 B #include main() { while(putchar(getchar())!=$); printf("end"); A) abcd$abcde B)abcd$end C

33、)abcdend D) abcd$abcdeend 9. 以下程序段 ( A ) x=-1; do { x=x*x; } while(x>0); A. 是死循環(huán) B. 循環(huán)執(zhí)行一次 C. 循環(huán)執(zhí)行二次 D. 有語法錯誤 10. 下面程序段執(zhí)行后的結(jié)果為: ( B ) int sum=0, n=10; do { sum=sum+n; n++; } while(n<10) printf(“%d,%d”,sum,n) A. 0, 10 B. 10, 11 C. 0, 11 D. 以上結(jié)果都不對 11

34、.對以下程序段的敘述正確的是___A____. int x=1; do { x= -1*x; } while(!x) A) 是死循環(huán) B) 循環(huán)執(zhí)行一次 C)循環(huán)執(zhí)行二次 D)有語法錯誤 12.循環(huán)“for(i=0,x=1;i=10&&x>0;i++);”的循環(huán)執(zhí)行( A?。?。 A.無限次     B.不確定次    C.10次      D.9次 13.執(zhí)行語句{for(j=0;j<=3;j++) a=1;}后變量j的值是 C . A)0 B) 3 C)4 D) 1 14. 有如下程序 main() { int i

35、,sum=2; for(i=1;i<=3;i+=2) sum+=i; printf(“%d\n”,sum); } 該程序的執(zhí)行結(jié)果是 A A) 6 B) 3 C) 死循環(huán) D) 4 *15、執(zhí)行語句”for ( i=0; i++<3 ; ) ;”后,變量i的值為( C )。 A、2 B、3 C、4 D、5 16.設(shè)x和y均為int型變量,則執(zhí)行以下的循環(huán)后,y的值為( D?。?。 for(y=1,x=1;y<=50;y++)

36、 if(x>=0) break; if(x%2==1) {x+=5;continue;} x-=3; A.2 B.4 C.6 D.1 五 數(shù)組 1. 以下對一維數(shù)組a的正確說明是: D A) char a(10); B) int a[]; C)int k=5,a[k]; D)char a[3]={‘a(chǎn)’,’b’,’c’}; 2.以下能對一維數(shù)組a進(jìn)行初始化的語句是: ( C ) A. int a[5]=(0,1,2,3,4,) B. int a

37、(5)={} C. int a[3]={0,1,2} D. int a{5}={10*1} 3.在C語言中對一維整型數(shù)組的正確定義為 D 。 A)int a(10); B)int n=10,a[n]; C)int n;a[n]; D)#define N 10 int a[N]; 4、已知:int a[10]; 則對a數(shù)組元素的正確引用是( D )。 A、a[10] B、a[3.5] C、a(5) D、a[0] 5. 執(zhí)

38、行下面的程序段后,變量k中的值為 C A) 不定值 B) 33 C) 30 D) 10 int k=3, s[2]; s[0]=k; k=s[0]*10; *6. 下列說法中錯誤的是 C A 構(gòu)成數(shù)組的所有元素的數(shù)據(jù)類型必須是相同的 B 用指針法引用數(shù)組元素允許數(shù)組元素的下標(biāo)越界 C 一維數(shù)組元素的下標(biāo)依次是1、2、3…… D 定義數(shù)組時的長度可以是整型常量表達(dá)式 7. 若有以下數(shù)組說明,則數(shù)值最大的和最小的元素下標(biāo)分別是( B )。 int a[12]={1

39、,2,3,4,5,6,7,8,9,10,11,12}; A.1,12 B.0,11 C.1,11 D.0,12 8.若有以下數(shù)組說明,則i=10;a[a[i]]元素數(shù)值是( B?。?。 int a[12]={1,4,7,10,2,5,8,11,3,6,9,12}; A.10 B.9 C.6 D.5 9. 假定int類型變量占用兩個字節(jié),其有定義:int x[10]={0,2,4};,則數(shù)組x在內(nèi)存中所占字節(jié)數(shù)是 D A) 3 B) 6

40、 C) 10 D) 20 10.若有說明:int a[][3]={{1,2,3},{4,5},{6,7}}; 則數(shù)組a的第一維的大小為: ( B ) A. 2 B. 3 C. 4 D.無確定值 11.以下定義語句中,錯誤的是 ( D ) A) int a[]={1,2}; B) char *a; C) char s[10]=“test”; D) int n=5,a[n]; 12.下面程序段的輸出結(jié)果是: ( C ) int i; int x[3][3]={1,2,3,4,5,6,7,8,9};

41、 for (i=0;i<3;i++) printf("%d ",x[i][2-i]); A) 1 5 9 B) 1 4 7 C) 3 5 7 D) 3 6 9 13.對二維數(shù)組的正確定義是( C?。?    A.int a[ ] [ ]={1,2,3,4,5,6}; B.int a[2] [ ]={1,2,3,4,5,6}; C.int a[ ] [3]={1,2,3,4,5,6}; D.int a[2,3]={1,2,3,4,5,6}; 14.已知int a[3][4];則對數(shù)組元素引用正確的是__C___

42、 A)a[2][4] B)a[1,3] C)a[2][0] D)a(2)(1) 六、字符數(shù)組 1. 在C語言中,以 D 作為字符串結(jié)束標(biāo)志 A)’\n’ B)’ ’ C) ’0’ D)’\0’ 2.下列數(shù)據(jù)中屬于“字符串常量”的是( A )。 A.“a” B.{ABC} C.‘a(chǎn)bc\0’ D.‘a(chǎn)’ 3.字符串 “ABCD”在內(nèi)存占用的字節(jié)數(shù)是( D?。? A.4    B.6     C.1     D.5 4. 下面不正確的字符串常量是:( A ) A.

43、‘PROGRAM’ B “12’12” C “0” D “ ” 5.設(shè)有數(shù)組定義: char array [ ]="abcd"; 則數(shù)組array所占的空間為 B A) 4個字節(jié) B) 5個字節(jié) C) 6個字節(jié) D) 7個字節(jié) *6.下述對C語言中字符數(shù)組的描述錯誤的是 C 。 A)字符數(shù)組可以存放字符串 B)字符數(shù)組中的字符串可以整體輸入和輸出 C)可在賦值語句中通過賦值運(yùn)算符“=”對字符數(shù)組整體賦值 D)可在對字符數(shù)組定義時通過賦值運(yùn)算符“=”對字符數(shù)組整體初始化 7.已知char x[]="h

44、ello", y[]={h,e,a,b,e};, 則關(guān)于兩個數(shù)組長度的正確描述是 B . A)相同 B)x大于y C)x小于y D)以上答案都不對 8.給出以下定義: char x[ ]="abcdefg"; char y[ ]={a,b,c,d,e,f,g}; 則正確的敘述為 C A) 數(shù)組x和數(shù)組y等價 B) 數(shù)組x和數(shù)組y的長度相同 C) 數(shù)組x的長度大于數(shù)組y的長度 D) 數(shù)組x的長度小于數(shù)組y的長度 9、若有以下語句,則正確的描述是( D )。 static char x[

45、]=”12345” ; static char y[ ]={‘1’,‘2’,‘3’,‘4’, 5’,’\0’} ; A、x數(shù)組長度大于y數(shù)組長度 B、x數(shù)組和y數(shù)組不相同 C、x數(shù)組長度小于y數(shù)組長度 D、x數(shù)組等價于y數(shù)組 10、已知:char s[20]= ”programming”, *ps=s; 則不能引用字母o的表達(dá)式是( C )。 A、ps[2] B、s[2] C、ps+2 D、ps+=2, *ps *11.判斷兩字符串s1,s2是否相等,應(yīng)使用( D ). A)if(s1=

46、=s2) B)if(s1=s2) C)if(strcpy(s1,s2)) D)if(strcmp(s1,s2)==0) *12.以下printf語句的輸出結(jié)果為: A printf(“%d\n”,strlen(“school”)); A) 7 B) 6 C)存在語法錯誤 D)不定值 13. 對字符數(shù)組s賦值,不合法的一個是( C ) A. char s[]="Beijing"; B. char s[20]={"beijing"}; C. char s[20];s="Beijing"; D. c

47、har s[20]={B,e,i,j,i,n,g}; 14. 對字符數(shù)組str賦初值,str不能作為字符串使用的一個是( D ) A. char str[]="shanghai"; B. char str[]={"shanghai"}; C. char str[9]={s,h,a,n,g,h,a,i,’\0’}; D. char str[8]={ s,h,a,n,g,h,a,i}; 15. 合法的數(shù)組定義是 C A)int a[]={“string”}; B) int a[5]={0,1,2,3,4,5}; C)c

48、har a[]= “string”; D) char a[5]={0,1,2,3,4,5}; 16. 對字符數(shù)組s賦值,不合法的是: ( C ) A) char s[]="china"; B) char s[20]={" china "}; C) char s[20];s=" china"; D) char s[20]={c,h,i,n,a}; 17. 下面初始化與此初始化charc[ ]=“I am happy”;等價的是( A ) A) char c[ ]={‘I’,’’,’a’,’m’,’’,’h’

49、,’a’,’p’,’p’,’y’,’\0’}; B) char c[ ]={‘I’,’am’,’happy’}; C) char c[ ]={‘I’, ’’,’a’,’m’,’’,’h’,’a’,’p’,’p’,’y’}; D)char c[ ]={‘I’,’am’,’happy’,’\0’}; 18.下面各語句中,能正確進(jìn)行賦字符串操作的語句是( C )。 A. char s[5]={“ABCDE”}; B. char s[5]={‘A’,‘B’,‘C’,‘D’,‘E’,’\0’}; C. char *s;s=“ABCDE”; D. char *s;scanf(“%s”,&s

50、); 19.下列字符串賦值方式不正確的是( A ) A).char str[20]; B). char *str ; str=”I am a boy!”; str=”I am a boy!”; C). char *str=”I am a boy!”; D). char str[20]=” I am a boy!”; 七.指針 1. 語句int *p;說明了 C 。 A)p是指向一維數(shù)組的指針 B)p是指向函數(shù)的指針,該函數(shù)返回一int型數(shù)據(jù) C)p是指向int

51、型數(shù)據(jù)的指針 D)p是函數(shù)名,該函數(shù)返回一指向int型數(shù)據(jù)的指針 2. 變量的指針,其含義是指該變量的:( B ) A. 值 B. 地址 C. 名 D.一個標(biāo)志 3.若x是整型變量,pb是基類型為整型的指針變量,則正確的賦值表達(dá)式是( A ) A) pb=&x B) pb=x C) *pb=&x D) *pb=*x 4、已知:int a, *p=&a; 則下列函數(shù)調(diào)用中錯誤的是( D )。 A、scanf(“%d”,&a); B、scanf(“%d”,p);

52、C、printf(“%d”,a); D、printf(“%d”,p); 5.對于同類型的指針變量,不可能進(jìn)行的運(yùn)算是( C?。?。 A.- B.= C.+ D.== 6. 對于基類型相同的兩個指針變量之間,不能進(jìn)行的運(yùn)算是 C A) < B) = C) + D) - 7.下列不正確的定義是( A )。 A. int *p=&i,i; B.int *p,i; C.int i,*p=&i;

53、 D.int i,*p; 8. 若有說明:int n=2,*p=&n,*q=p,則以下非法的賦值語句是: ( D ) A)p=q B)*p=*q C)n=*q D)p=n 9. int *p,a=10,b=1; p=&a; a=*p+b; 執(zhí)行該程序段后,a的值為 C A) 編譯出錯 B) 10 C) 11 D) 12 10.下列函數(shù)的功能是 A 。 void fun(int *p1,int *p2) { int p; p=*p

54、1;*p1=*p2;*p2=p; A) 交換*p1和*p2的值 B) 語法正確,但無法交換*p1和*p2的值 C) 交換*p1和*p2的地址 D)有語法錯誤 八、函數(shù) 1.C語言中函數(shù)返回值的類型是由 A 決定的. A)函數(shù)定義時指定的類型 B) return語句中的表達(dá)式類型 C) 調(diào)用該函數(shù)時的實參的數(shù)據(jù)類型 D) 形參的數(shù)據(jù)類型 2. 在C語言中,函數(shù)的數(shù)據(jù)類型是指( A ) A 函數(shù)返回值的數(shù)據(jù)類型 B. 函數(shù)形參的數(shù)據(jù)類型 C 調(diào)用該函數(shù)時的實參的數(shù)據(jù)類型 D.任意指定的數(shù)

55、據(jù)類型 *3.C程序中函數(shù)返回值的類型是由 A 決定的. A)函數(shù)定義時指定的函數(shù)類型 B) 函數(shù)中使用的最后一個變量的類型 C)調(diào)用函數(shù)時臨時確定 D) 調(diào)用該函數(shù)的主調(diào)函數(shù)類型 *4. C語言規(guī)定,簡單變量做實參時,它和對應(yīng)形參之間的數(shù)據(jù)傳遞方式為 ( B ) A. 由系統(tǒng)選擇 B. 單向值傳遞 C. 由用戶指定傳遞方式 D. 地址傳遞 5. 在函數(shù)調(diào)用時,以下說法正確的是( B?。?  A.函數(shù)調(diào)用后必須帶回返回值  B.實際參數(shù)和形式參數(shù)可以同名  C.函數(shù)間的數(shù)據(jù)傳遞不可以使用全局變量  D.主調(diào)函數(shù)和被調(diào)函數(shù)總是在

56、同一個文件里 *6. 在C語言程序中,有關(guān)函數(shù)的定義正確的是( B )。 A.函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套 B.函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套 C.函數(shù)的定義和函數(shù)的調(diào)用均不可以嵌套 D.函數(shù)的定義和函數(shù)的均可以嵌套 *7. 以下對C語言函數(shù)的有關(guān)描述中,正確的是( A )。 A.在C語言程序中,調(diào)用函數(shù)時,如函數(shù)參數(shù)是簡單變量,則只能把實參的值傳遞給形參,形參的值不能傳送給實參 B.C語言函數(shù)既可以嵌套定義又可遞歸調(diào)用 C.C語言函數(shù)必須有返回值,否則不能使用函數(shù) D.在C語言程序中有調(diào)用關(guān)系的所有函數(shù)必須放在同一個源程序文件中

57、 *8.C語言中對函數(shù)的描述正確的是 C . A)可以嵌套調(diào)用,不可以遞歸調(diào)用 B) 可以嵌套定義 C)嵌套調(diào)用,遞歸調(diào)用均可 D)不可以嵌套調(diào)用 9.以下敘述中正確的是 A A) 構(gòu)成C程序的基本單位是函數(shù) B) 可以在一個函數(shù)中定義另一個函數(shù) C) main()函數(shù)必須放在其它函數(shù)之前 D) 所有被調(diào)用的函數(shù)一定要在調(diào)用之前進(jìn)行定義 10.用數(shù)組名作為函數(shù)調(diào)用時的實參時,傳遞給形參的是 A 。 A)數(shù)組首地址 B)數(shù)組第一個元素的值 C)數(shù)組全部元素的值

58、 D)數(shù)組元素的個數(shù) 11.有一函數(shù)的定義如:void fun(char *s){……},則不正確的函數(shù)調(diào)用是( D )。 A.main() {char a[20]=”abcdefgh”; fun(a); B.main() { char a[20]=”abcdefgh”; fun(&a[0]); C. main() { char a[20]=”abcdefgh”; char *p=a;fun(p); D. main() {char a[20]=”abcdefgh”; fun(a[]); 12、函數(shù)的功能是交換變量x和y中的值,且通過正確調(diào)用返回交換

59、的結(jié)果。能正確執(zhí)行此功能的函數(shù)是( D )。 B、funb(int x , int y) { int t; t=x; x=y; y=t; } A、funa(int *x, int *y) { int *p; *p=*x ; *x=*y; *y=*p; D、fund(int *x, int *y) { int t; t=*x; *x=*y; *y=t; } C、func(int *x, int *y) { int *

60、p; p=x;x=y; y=p; 13. 有如下程序 int func(int a,int b) { return(a+b);} main() { int x=2,y=x,z=8,r; r=func(func(x,y),func(y,z)); printf(“%d\n”,r); } 該程序的輸出的結(jié)果是 C A) 12 B) 13 C) 14 D) 15 *14. 以下程序的輸出結(jié)果是 B int a, b; void fun() { a=100

61、; b=200; } main() { int a=100, b=100; fun(); printf(“%d%d \n”, a,b); A) 100200 B) 100100 C) 200100 D) 200200 *15. 下列說法中正確的是:( A ) A. 局部變量在一定范圍內(nèi)有效,且可與該范圍外的變量同名。 B. 如果一個源文件中,全局變量與局部變量同名,則在局部變量范圍內(nèi),局部變量不起作用。 C. 局部變量缺省情況下都是靜態(tài)變量。 D. 函數(shù)體內(nèi)的局部靜態(tài)變量,在函數(shù)體外也有效。 16. 在C語言中,表示靜態(tài)存儲類別的關(guān)鍵字是:

62、( C ) A) auto B) register C) static D) extern 17.未指定存儲類別的變量,其隱含的存儲類別為( A )。 A)auto B)static C)extern D)register 九、編譯預(yù)處理 *1.在C語言程序中,以#號帶頭的行是預(yù)編譯處理( A )。 A.命令 B.語句 C.函數(shù) D.字符串 2.下列正確的預(yù)編譯命令是( D )。 A. define PI 3.14159 B. #define P

63、(a,b)=strcpy(a,b) C. #define stdio.h D. #define PI 3.14159; 3.下列命令或語句中,正確的是( C )。 A. #define MYNAME=”ABC” B. #include stdio.h C. for(i=0;i<10;i++); D. struct int stu{int name}; *4.下列命令或語句中,錯誤的是( C )。 A.#define PI 3.14159 B.#include ; B.if(2); D.for(;;) if(1) break; 【精品文檔】第 25 頁

展開閱讀全文
溫馨提示:
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)方式做保護(hù)處理,對用戶上傳分享的文檔內(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)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!