1、不能把字符串:Hello! 賦給數(shù)組b的語句是()。
A.char b[10]={‘H’,‘e’,‘l’,‘l’,‘o’,‘!’}
B.char b[10]; b=“Hello!”
C.char b[10]; strcpy(b,“Hello!”)
D.char b[10]=“Hello!”
本題答案:
B
2、若k為整型,則下列while循環(huán):k=2; while(k==0) printf(“%d”,k); k--; printf(“\n”); 執(zhí)行多少次?()
A.2
B.9
C.1
本題答案:
C
3、若要用下面的程序片段使指針變量p指向一個存儲整型變量的動態(tài)存儲單元:int *p; p=____malloc(sizeof(int)); 則應(yīng)填入()。
A.int
B.*int
C.(*int)
D.(int*)
本題答案:
D
4、設(shè)int a=12; 表達式a+=a-=a*=a的值是()。
A.12
B.144
C.132
本題答案:
C
5、下列標識符中,不能作為合法的C用戶定義標識符的是()。
A.a3_b3
B.void
C._123
D.IF
本題答案:
B
6、以下選項中屬于C語言的數(shù)據(jù)類型是()。
A.復(fù)合型
B.雙精度型
C.邏輯型
D.集合型
本題答案:
A
7、設(shè)有以下宏定義:#define H 30 #define LEN H+20則執(zhí)行賦值語句v=LEN*10; 后,v的值是()。
A.60
B.230
C.500
本題答案:
B
8、有以下程序段:main() {int a=5,*b,*c; c=&b; b=&a;……} 程序在執(zhí)行了c=&b; b=&a; 語句后,表達式**c的值是()。
A.變量a的地址
B.變量b的地址
C.變量a的值
D.變量b的值
本題答案:
C
9、以下能正確定義一維數(shù)組的選項是()。
A.int num[]
B.#define N 100 int num[N]
C.int num[0..100]
D.int N=100; int num[N]
本題答案:
B
10、以下程序:main( ) {int a=011; printf(“%d\n”,a);} 的輸出結(jié)果是()。
A.12
B.11
C.10
D.9
本題答案:
D
11、為了避免嵌套的條件分支語句if-else的二義性,C語言規(guī)定:C程序中的else總是與哪個if組成配對關(guān)系?()
A.縮排位置相同的if
B.在其之前未配對的if
C.在其之前未配對的最近的if
D.同一行上的if
本題答案:
C
12、下面程序:main() {char ch[7]={“65ab21”}; int i,s=0; for(i=0; ch[i]=‘0’ && ch[i]=‘9’; i+=2) s=10*s+ch[i]-‘0’; printf(“%d\n”,s);} 運行的結(jié)果是()。
A.2ba56
B.6521
C.6
D.62
本題答案:
C
13、若有以下說明和語句,int c[4][5],(*p)[5]; p=c; 能正確引用c數(shù)組元素的是()。
A.p+1
B.*(p+3)
C.*(p+1)+3
D.*(p[0]+2))
本題答案:
D
14、要定義一個數(shù)組a是一個具有3個元素的指針數(shù)組,它的定義語句格式是()。
A.int (*a)[3]
B.int *a[2]
C.int *a[3]
D.以上寫法都不對
本題答案:
C
15、C語言中,合法的字符型常數(shù)是()。
A.‘A’
B.“A”
C.65
D.A
本題答案:
A
16、兩個指針變量不可以()。
A.相加
B.比較
C.相減
D.指向同一地址
本題答案:
A
17、下列函數(shù):int fun1(chat* x) {char*y=x; while(*y++); return(y-x-1);} 的功能是()。
A.求字符串的長度
B.比較兩個字符串的大小
C.將字符串x復(fù)制到字符串y
D.將字符串X連接到字符串Y后面
本題答案:
A
18、當說明一個共用體變量時,系統(tǒng)分配給它的內(nèi)存是()。
A.各成員所需內(nèi)存容量的總和
B.共用體中一個成員所需內(nèi)存
C.各成員所需內(nèi)存容量的最大值
D.共用體中最后一個成員所需內(nèi)存
本題答案:
A
19、不正確的指針概念是()。
A.一個指針變量只能指向與其類型相同的變量
B.一個變量的地址稱為該變量的指針
C.只有同一類型變量的地址才能存放在指向該類型變量的指針變量之中
D.指針變量可以賦任意整數(shù),但不能賦浮點數(shù)
本題答案:
D
20、以下不表示循環(huán)結(jié)構(gòu)的是()。
A.do-while
B.switch
C.for
D.while
本題答案:
B
21、數(shù)組名作為實參調(diào)用函數(shù),實際傳給形參的是數(shù)組中全部的元素值。()
A.錯誤
B.正確
本題答案:
A
22、putchar()一次可以輸出多個字符。()
A.錯誤
B.正確
本題答案:
A
23、當循環(huán)體至少能執(zhí)行一次時,while循環(huán)和do-while循環(huán)是等價的。()
A.錯誤
B.正確
本題答案:
B
24、C程序總是從main()函數(shù)的一條語句開始執(zhí)行的。()
A.錯誤
B.正確
本題答案:
B
25、指針在任何情況下都可進行,>,=,<=,==運算。()
A.錯誤
B.正確
本題答案:
B
26、getchar()函數(shù)沒有參數(shù)。()
A.錯誤
B.正確
27、C程序中,一行上可以寫多個語句。()
A.錯誤
B.正確
28、宏定義的宏名一定要大寫,否則無效。()
A.錯誤
B.正確
29、表達式0195是一個八進制整數(shù)。()
A.錯誤
B.正確
30、如果一個函數(shù)不需要參數(shù),則函數(shù)名后的括號可以省略。()
A.錯誤
B.正確
31、在賦值語句變量=表達式中,當表達式的類型和變量的類型不一致時,以表達式的類型為準。()
A.錯誤
B.正確
32、int i=20; switch(i/10) {case 2:printf(“A”); case 1:printf(“B”);} 的輸出結(jié)果為A。()
A.錯誤
B.正確
33、邏輯運算符的優(yōu)先級為&&|!。()
A.錯誤
B.正確
34、聯(lián)合變量與結(jié)構(gòu)變量的最大區(qū)別在于,聯(lián)合變量的所有成員占用同一段內(nèi)存,而結(jié)構(gòu)變量的成員占用不同的內(nèi)存。()
A.錯誤
B.正確
35、假設(shè)有int a[10],*p; 則p=&a[0]與p=a等價。()
A.錯誤
B.正確
36、C語言規(guī)定數(shù)組元素的下標從0開始。()
A.錯誤
B.正確
37、一個函數(shù)中只允許有一條return語句。()
A.錯誤
B.正確
38、若有形參定義:int a[10]; 則a++是合法的表達式。()
A.錯誤
B.正確
39、在對某一函數(shù)進行多次調(diào)用時,系統(tǒng)會對相應(yīng)的自動變量重新分配存儲單元。()
A.錯誤
B.正確
40、不允許對二維數(shù)組的部分元素賦初值。()
A.錯誤
B.正確