福建省計(jì)算機(jī)2級(jí)C語言-復(fù)習(xí)習(xí)題題庫_第1頁
福建省計(jì)算機(jī)2級(jí)C語言-復(fù)習(xí)習(xí)題題庫_第2頁
福建省計(jì)算機(jī)2級(jí)C語言-復(fù)習(xí)習(xí)題題庫_第3頁
福建省計(jì)算機(jī)2級(jí)C語言-復(fù)習(xí)習(xí)題題庫_第4頁
福建省計(jì)算機(jī)2級(jí)C語言-復(fù)習(xí)習(xí)題題庫_第5頁
已閱讀5頁,還剩166頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第一部分:選擇題(40分,20小題/套)

概述

1、下面關(guān)于C語言的敘述中,正確的是()

A.每行只能寫一條語句B.程序中必須包含

有輸入語句

C.main函數(shù)必須位于文件的開頭D.每條語句最后必

須有一個(gè)分號(hào)

2、下面關(guān)于C語言的敘述中,錯(cuò)誤的是()

A.若一條語句較長(zhǎng),也可分寫在下一行上

B.構(gòu)成C語言源程序的基本單位是表達(dá)式

C.C語言源程序中大、小寫字母是有區(qū)別的

D.一個(gè)C語言源程序可由一個(gè)或多個(gè)函數(shù)組成

3、關(guān)于C語言數(shù)據(jù)類型的敘述,正確的是()

A,枚舉類型不是基本類型B.數(shù)組不是構(gòu)造類型

C.變量必須先定義后使用D.不允許使用空類型

4、C程序中main函數(shù)的位置()

A.必須在最開始B.必須在系統(tǒng)庫函數(shù)后面

C.可以在自定義函數(shù)后面D.必須在最后

5、C語言的函數(shù)體由()括起來

A.()B.{}C.[]D./**/

6、關(guān)于C語言的敘述中,不正確的是()

A.C程序可由一個(gè)或多個(gè)函數(shù)組成B.C程序必須包含

1

一個(gè)main。函數(shù)

C.C程序的基本組成單位是函數(shù)D.注釋說明只能

位于一條語句的后面

7、一個(gè)程序的執(zhí)行是從()

A.本程序的第一個(gè)函數(shù)開始,到最后一個(gè)函數(shù)結(jié)束

B.本程序的main函數(shù)開始,到main函數(shù)結(jié)束

C.本程序的main函數(shù)開始,到最后一個(gè)函數(shù)結(jié)束

D.本程序的第一個(gè)函數(shù)開始,到main函數(shù)結(jié)束

8、結(jié)構(gòu)化程序設(shè)計(jì)的三種基本結(jié)構(gòu)是()

A.函數(shù)結(jié)構(gòu)、分支結(jié)構(gòu)、判斷結(jié)構(gòu)B.函數(shù)結(jié)構(gòu)、

嵌套結(jié)構(gòu)、平行結(jié)構(gòu)

C.順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)D.分支結(jié)構(gòu)、

循環(huán)結(jié)構(gòu)、嵌套結(jié)構(gòu)

9、調(diào)試程序是指對(duì)程序進(jìn)行()

A.編輯B.編譯C.查錯(cuò)和排錯(cuò)D.連接

10、C語言中,復(fù)合語句的構(gòu)成是將一系列語句置于()

A.begin與end之間B.一對(duì)圓括號(hào)"()”之間

C.一對(duì)花括號(hào)“{}”之間D.一對(duì)方括號(hào)“[]”之間

H、構(gòu)成C語言源程序的基本單位是()

A.語句B.過程C.表達(dá)式D.函數(shù)

語法基礎(chǔ)

2

12、在C語言中,正確的用戶標(biāo)識(shí)符是()

A.3fB.forC.structD._f.5

13、C語言的基本數(shù)據(jù)類型包括()

A.整型、實(shí)型、字符型B.整型、實(shí)型、字

符型、邏輯型

C.整型、字符型、邏輯型D.整型、實(shí)型、邏

輯型

14、以下()是正確的常量

A.E-5B.1E5.1C.'al2'D.

32766L

15、以下()是正確的變量名

A.a.beeB.-pllC.intD.p_ll

16、以下()是正確的字符常量

A."c"B.C.'W'D."\32a”

17、以下()是不正確的字符串常量

A.'abc'B.C.“0”D.“

18、C語言的整型數(shù)據(jù)在內(nèi)存中的存儲(chǔ)形式是()

A.原碼B.反碼C.補(bǔ)碼D.ASCII

19、以下()是正確的浮點(diǎn)數(shù)

A.e3B..62C.2e4.5D.123

3

20、下列不屬于C語言關(guān)鍵字的是()

A.continueB.integerC.staticD.

signed

21、C語言的字符型數(shù)據(jù)在內(nèi)存中的存儲(chǔ)形式是()

A.原碼B.補(bǔ)碼C.反碼D.ASCII

22、在C語言中,變量所分配的內(nèi)存空間大小是()

A.由變量的類型決定B.由用戶自己決定

C.任意的D.均為兩個(gè)字節(jié)

23、若有定義:inta=2;則正確的賦值表達(dá)式是()

A.a-=(a*3)B.double(-l)C.a*3D.

a*4=3

24>語句x=(a=3,b=++a);運(yùn)行后,x、a、b的值依次為()

A.3,3,4B.4,4,3C.4,4,4D.3,4,3

25、語句a=(3/4)+3%2;運(yùn)行后,a的值為()

A.0B.1C.2D.3

26、以下四項(xiàng)中,符合C語言語法的語句是()

A.inta+b=c;B.inta=12:b=12:c=12;

C.inta=12,b=12,c=12;D.inta,b=12,floatc=21

27、若有定義:intx,a;則語句x=(a=3,a+l);運(yùn)行后,x^a

的值依次為()

A.3,3B.4,4C.4,3D.3,4

28、若變量已正確定義并賦值,符合C語言語法的表達(dá)式是

4

()

A.a=8+b+c,a++B.a=3aC.int(12.3%4)

D.a=a+l=c+b

29^若有定義:inta,b;doublex;則以下不符合C語言語

法的表達(dá)式是()

A.x%(-3)B.a+=-lC.a=b=2D.

x=a+b

30、若有定義:intx=2,y=3;floati;則以下符合C語言語

法的表達(dá)式是()

A.x=x*3=2B.x=(y==l)C.i=float(x)

D.i%(-3)

31、若有定義:intx;則語句x=(2*3)+6%5;運(yùn)行后,x的

值是()

A.8B.7C.6D.5

32、下面關(guān)于C語言變量的敘述中,錯(cuò)誤的是()

A.可以用const關(guān)鍵字定義變量B.在C程序中,

SUM和sum是不同的變量

C.變量名必須由字母或下劃線組成D.變量的類型

確定了變量的取值范圍

33、若有定義:intx=5,y=6;則表達(dá)式x=(y==6)的值為()

A.5B.1C.6D.0

34、下面敘述正確的是()

5

A.2/3與2.0/3.0等價(jià)B.(int)2.0/3與2/3等價(jià)

C.++5與6等價(jià)D.0與"A”等價(jià)

35、下面敘述中,錯(cuò)誤的是()

A.C語言基本的算術(shù)運(yùn)算符不包含模運(yùn)算符“%”

B.算術(shù)運(yùn)算符的優(yōu)先級(jí)高于關(guān)系運(yùn)算符

C.自加和自減運(yùn)算符的結(jié)合方向是”自右向左”

D.C語言規(guī)定在表達(dá)式求值時(shí),按其中運(yùn)算符的優(yōu)先級(jí)先高

后低的次序進(jìn)行

36、下面敘述正確的是()

A.強(qiáng)制類型轉(zhuǎn)換運(yùn)算的優(yōu)先級(jí)高于算術(shù)運(yùn)算B.若a和b

是整型變量,(a+b)++是合法的

C.是不合法的D.

是合法的

37、若有定義:inti=l,j=5;則表達(dá)式(++j)*(i--)的值為()

A.1B.OC.6D.7

38、設(shè)整型變量a為5,使b不為2的表達(dá)式是()

A.b=(++a)/3B.b=6-(-a)C.b=a%2

D.b=a/2

39、若有定義:inta=l,b=2,c=3;貝ij語句++a||++b&&++c;運(yùn)行

后b的值為()

A.1B.OC.2D.3

40>若有定義:inti,j;則表達(dá)式(i=2,j=5,i++,i+j++)的值是()

6

A.7B.8C.9D.10

41、若有定義:inta,b;則表達(dá)式(a=2,b=5,a*2,b++,a+b)的值是()

A.7B.8C.9D.10

42>若有定義:inti=2,j=5;則表達(dá)式(i+l,j+l,(++i+(j--))的值

為()

A.8B.6C.7D.5

43、若已定義:inti=3,k;則語句k=(i--)+(i--);運(yùn)行后k的值

為()

A.4B.5C.6D.7

44、C語言的運(yùn)算符按運(yùn)算對(duì)象的個(gè)數(shù)可以分為()

A.單目運(yùn)算符一種B.單目和雙目運(yùn)算符

C.單目、雙目和三目運(yùn)算符D.單目、雙目、三目和

四目運(yùn)算符

45、若已定義:floatm;擬從鍵盤輸入135.78這一數(shù)據(jù)給變

量m,則應(yīng)選用的語句是()

A.scanf(u%5.2r,&m);B.scanf("%3.2P,&m);

C.scanf(“%6.2r‘,&m);D.scanf(t4%6r,&m);

46>已知doublea;使用scanf()函數(shù)輸入一個(gè)數(shù)值給變量a,

正確的函數(shù)調(diào)用是()

A.scanf(“%ld”,&a);B.scanf(t4%ir,&a);

C.scanf(“%c”,&a);D.scanf(“%u”,&a);

47>已知chara;使用scanf()函數(shù)輸入一個(gè)字符給變量a,不

7

正確的函數(shù)調(diào)用是()

A.scanf(“%d”,&a);B.scanf(t4%ir,&a);

C.scanf(“%c”,&a);D.scanf("%u”,&a);

48>putchar。函數(shù)的功能是向終端輸出()

A.多個(gè)字符B.一個(gè)字符C.一個(gè)實(shí)型變量

值D.一個(gè)整型變量表達(dá)式

49、以下程序段運(yùn)行后的輸出結(jié)果是()

intk=ll;

printf(ttk=%d,k=%o,k=%x\n,,,k,k,k);

A.k=ll,k=13,k=cB.k=ll,k=12,k=13

C.k=ll,k=13,k=bD.k=ll,k=13,k=a

50、若有定義:intx=l234,y=l23,z=l2;貝ll語句

printf(“%4d+%3d+%2d”,x,y,z);運(yùn)行后的輸出結(jié)果為()

A.123412312B.12341234123412341231231231212

C.1234+1234+1234D.1234+123+12

51、已有如下定義和輸入語句,

inta;charcl,c2;

scanf(M%d%c%cH,&a,&cl,&c2);

若要求a>cl、c2的值分別為10、A和B,正確的數(shù)據(jù)

輸入是O

A.10ABB.10ABC.10ABD.

10AB

8

52、以下程序段的運(yùn)行結(jié)果是()

inta=O,b=O,c=O;

if(a&&++b)

c++;

printf("%d,%d\n”,b,c);

A.0,0B.1,2C.2,2D.1,0

53、以下程序的運(yùn)行結(jié)果是()

voidmainO

(

inta=65;

charc='A';

printf("%x,%d”,b,c);

)

A.65,aB.41,aC.65,65D.41,65

54、若已定義:inta=5;floatb=63.72;以下語句中能輸出正確

值的是()

A.printfft%d%d,,,a,b);B.pnntf(t4%d%2r,a,b);

C.printf(t4%2f%2F,a,b);D.printf(u%2f%d,,,a,b);

55、運(yùn)行以下程序段時(shí)編譯出錯(cuò),其原因是()

charcl=,8\c2=,2008,;

printf(n%c,%d\nH,cl,c2);

A.c2是字符變量,只能賦以字符常量,不能賦以字符串常

9

B.字符串要用“2008”表示,而'2008'不是字符串表示

C.'2008’只能賦值給字符數(shù)組

D.字符變量不能用%~格式輸出

56、若已定義:inta=3,b=15,c;則語句c=a>b;運(yùn)行后c的值

為()

A.1B.0C.tD.f

57、在C語言中,判定邏輯值為“真”的最正確的敘述是()

A.1B.非0的數(shù)C.大于0的數(shù)D.

非0的整數(shù)

58、若已定義:inta=-36,b=-30,c;則語句c=a〈b;運(yùn)行后c的

值為()

A.1B.tC.0D.f

59、能正確表示數(shù)學(xué)關(guān)系式800>=y>=500的C語言表達(dá)式

為()

A.(y<=800)&&(y>=500)B.(y<=800)

AND(y>=500)

C.800>=y>=500D.(y<=800)

&(y>=500)

60>若有定義:intx=3,y=4;則表達(dá)式!x||y的值為()

A.1B.0C.3D.4

61、若有定義:inti=7,j=8;則表達(dá)式i>=j||ivj的值為()

10

A.1B.變量i的值C.0D.變量j的

62、若希望當(dāng)a的值為奇數(shù)時(shí),表達(dá)式的值為“真”,a的值

為偶數(shù)時(shí),表達(dá)式的值為“假"。則不能滿足要求的表達(dá)式是

A.a%2==lB.!(a%2==0)C.!(a%2)

D.a%2

63、若有定義:intx=3,y=4,z=5;則值為0的表達(dá)式是()

A.'x'&&yB.x<=y

C.x||y+z&&y-zD.!((x<y)&&!z||l)

64>若有定義:inta=5,b=2,c=l;則表達(dá)式a-b<c||b==c的值

是()

A.0B.1C.3D.-1

65、C語言中,能正確表示條件10<x<20的邏輯表達(dá)式是()

A.10<x<20B.x>10||x<20C.x>10&&<20

D.(x>10)&&(x<20)

66、以下運(yùn)算符中優(yōu)先級(jí)最低的是()

A.?B.&C.?D.|

67>已知doublea=5.2;則正確的賦值表達(dá)式是()

A.a+=a-=(a=4)*(a=3)B.a=a*3=2

C.a%3D.a=double(-2)

68>已知chara=,R,;則正確的賦值表達(dá)式是()

11

A.a=(a++)%4B.a+2=3C.a+=256—

D.a=,\078,

69、已知inta=,R,;則正確的表達(dá)式是()

A.a%10B.a=int(3e2)C.2*a=a++D.

a=a+a=a+3

70、設(shè)有語句floatx=3.0,y=3.0;使x值為6.0的表達(dá)式是()

A.x*=y-4B.x*=yC.x=y+4D.x+=y

71、若有定義:floatx=3.5,intz=8;則表達(dá)式x+z%3/4的值為

()

A.3o75B.3.5C.3D.4

72>設(shè)有語句intx=3,y=3,a=l,b=2;表達(dá)式(x=a>b)&&

(y=b>a)的值是()

A.8B.1C.5D.O

73、若有定義:inta=2,b=3;floatx=3.5,y=2.5;

則表達(dá)式(float)(a+b)/2+(int)x%(int)y的值是()

A.3.5B.3.0C.2.5D.2.0

74>若有定義:intb=7;floata=2.5,c=4.7;則表達(dá)式

a+(b/2*(int)(a+c)/2)%4的值是()

A.2.5B.3.5C.4.5D.5.5

75、若有定義:inta=6,b=2;charcl=,a\c2=,b,;貝ij表達(dá)式

a+b%5+c2-cl的值是()

A.7B.8C.9D.表達(dá)式錯(cuò)誤

12

76、在下列運(yùn)算符中,優(yōu)先級(jí)最高的運(yùn)算符是()

A.<=B.!=C.!D.||

77、設(shè)有定義:charc;floatf;inti;unsignedu;doubled;下歹(J

各表達(dá)式的類型分別是()

1.u+92.D!=f&&(i+2)3.8.2*i+c

A.1.unsigned,2.int,3.double

B.1.double,2.double,3.double

C.,2.double,3.char

D.1.unsigned,2.double,3.int

控制結(jié)構(gòu)

78、以下程序段運(yùn)行時(shí),若從鍵盤輸入10,則輸出結(jié)果是()

inta;

scanf(w%dw,&a);

if(a++>10)

printf(w%d\n,,,a);

else

printf(tt%d\n,,,++a);

A.2B.11C.3D.12

79、以下程序的運(yùn)行結(jié)果是()

13

voidmainQ

intx,y=l,z;

z=-l;

if(z==O)

z=-z;

else

x=y>0?3:5;

printf(w%d\nw,x);

)

A.-1B.3C.1D.5

80、對(duì)于整型變量x,下屬if語句()與賦值語句:

x=x%2==0?l:0;不等價(jià)。

A.if(x%2!=0)x=O;elsex=l;B.if(x%2)x=l;elsex=0;

C.if(x%2==0)x=l;elsex=0;D.if(x%2==l)x=0;else

x=l;

81、以下程序段運(yùn)行的結(jié)果是()

inta,b,c,x;

a=b=c=0;x=15;

if(!a)x—;

elseif(b);

if(c)x=3;

14

else

x+=4;

printf(H%d\nH,x);

A.15B.17C.18D.19

82若有定義:inta=l,b=2,c=3;則執(zhí)行以下程序段后a,b,c

的值分別為O

if(a<b)

{c=a;a=b;b=c;}

A.a=l,b=2,c=3

B.a=2,b=3,c=l

C.a=2,b=3,c=3

D.a=2,b=l,c=l

83、以下程序段運(yùn)行后變量a的值為()

intx=6,y=5;

inta;

a=(~x==y++)?x:y+1

A.0B.1C.6D.5

84、以下程序的運(yùn)行結(jié)果是()

voidmain()

(

intn=,e,;

switch(n-)

15

defalut:printf(Merror");

case'a':

case'b':printf("good'');break;

case<c,:printf(<<passM);

cased:printf("warn'');

)

)

A.errorB.goodC.errorgoodD.warn

85、以下程序的運(yùn)行結(jié)果是()

voidmainO

(

intn='c';

switch(n++)

(

defalut:printf("eiror");

case'a':

case'b':printf(“good");break;

case'c':printf(“pass");

cased:printf("warii");

)

)

16

A.passB.warnC.passwarnD.error

86、以下程序的運(yùn)行結(jié)果是()

voidmainO

(

intn=5;

if(n++>6)

printf(w%d\n,,,n);

else

printf(u%d\n,,,++n);

)

A.4B.5C.6D.7

87、下面關(guān)于switch語句的敘述中,錯(cuò)誤的是()

A.case后面的表達(dá)式可以是關(guān)系表達(dá)式

B.switch語句是多分支選擇語句

C.每一個(gè)case后面的值必須互不相同,否則會(huì)出現(xiàn)矛盾的

現(xiàn)象

D.在執(zhí)行一個(gè)case分支后,可用一個(gè)break語句使流程跳

出switch語句

88、若有定義:inta=l,b=2,c=3;則以下程序段運(yùn)行后c的值

為()

if(a>b)

c=a*b;

else

c=a-b;

A.2B.0C.1D.-1

89、若有定義:intx;以下不會(huì)產(chǎn)生死循環(huán)的是()

A.for(;(x=getchar())!=,\n,;);B.while(l){x++;}

C.for(i=10;;i++);D.for(;;x+=l);

90>在循環(huán)語句的循環(huán)體中,break語句的作用是()

A.暫停程序的運(yùn)行B.結(jié)束本次循環(huán)

C.繼續(xù)執(zhí)行break語句之后的循環(huán)體各語句

D.提前結(jié)束循環(huán),接著執(zhí)行該循環(huán)后續(xù)的語句

91、以下程序段運(yùn)行后,循環(huán)體中的“count+=2;”語句運(yùn)行

的次數(shù)為()

inti,j,cuont=0;

for(i=l;i<=4;i++)

(

count+=2;

printf(t4%d^^,count);

)

A.4次B.10次C.16次D.20次

92、在c語言中while循環(huán)和do-while循環(huán)的主要區(qū)別是()

A.do-while循環(huán)體內(nèi)可以使用break語句,while循環(huán)體內(nèi)

不能使用break語句

B.do-while的循環(huán)體至少無條件執(zhí)行一次,while的循環(huán)體

不是

C.do-while循環(huán)體可以使用continue語句,while循環(huán)體內(nèi)

不能使用continue語句

D.while的循環(huán)體至少無條件執(zhí)行一次,do-while的循環(huán)體

不是

93、以下程序段運(yùn)行后,循環(huán)體運(yùn)行的次數(shù)為()

inti=0,x;

for(;i<10;i++)x=x+i;

A.10B.0C.1D.無限

94、以下程序段運(yùn)行后變量n的值為()

inti=l,n=l;

for(;i<3;i++)

{continue;n=n+i;}

A.4B.3C.2D.1

95、有以下程序:

voidmain()

(

inti;

for(i=0;i<3;i++)

switch(i)

19

casel:printf(tt%d,,,i);

case2:printf(w%d,,,i);

case3:printf("%d”,i);

)

)

執(zhí)行后輸出的結(jié)果是()

A.11122B.01222C.013020D.120

96、以下程序的運(yùn)行結(jié)果是()

voidmainO

(

intsum=0,item=0;

while(item<5)

(

item++;

sum+=item;

if(sum>=6)

break;

)

)

A.10B.15C.6D.7

97、以下程序的運(yùn)行結(jié)果是()

20

voinmainQ

intsum=0,item=0;

while(item<5)

(

item++;

if(item==2)

continue;

sum+=item;

)

printf("%d\n”,sum);

)

A.10B.13C.15D.1

98、以下程序段執(zhí)行后變量sum的值為()

inti,j=l,sum=0;

for(i=l,iv=3,i++)

(

sum+=j;

j++;

)

A.5B.3C.6D.4

99、以下程序的運(yùn)行結(jié)果是()

21

#include<studio.h>

mainO

(

inty=10;

do

{y-;}

while(-y);

printf(H%d\nH,y-);

)

A.1B.2C.-1D.0

數(shù)組

100、C語言中數(shù)組元素下標(biāo)的數(shù)據(jù)類型是()

A.實(shí)型常量B.整型常量或整型表達(dá)式

C.任何類型的表達(dá)式D.字符型常量

101、下列數(shù)組定義中,正確的是()

A.inta[10|;

B.intn=10,a[n];

C.intN=10;inta[N];

D.inta[n];

102、若已定義:inta[13];則不能正確引用a數(shù)組的元素的

是()

22

A.a[0]B.a[10]C.a[10+3]D.a[13-5]

103、若有定義:inta[3]={0,l,2};則a[l]的值為()

A.0B.1C.2D.3

104、若有定義:inta[5]={l,2,3,4,5};

則語句a[l]=a[2]+a[2+2]-a[3-l];運(yùn)行后a[l]的值為()

A.6B.5C.1D.2

105、以下合法的數(shù)組定義是()

A.inta[]=wstringM;B.inta[5]={0,l,2,3,4,5};

C.chara[]={0,l,2,3,4,5);D.chars={<<stringM);

106、若有如下程序段:

chars[10];

s="abcd";

printf(“%s\n”,s);

則()。

A.執(zhí)行時(shí)輸出:abedB.執(zhí)行時(shí)輸出:a

C.執(zhí)行時(shí)輸出:abD.編譯不通過

107、F面程序段的運(yùn)行結(jié)果是()

inti=0,a[]={7,5,7,3,8,3};

do{

a[i]+=2;

}while(a[++i]>5);

for(i=0;i<6;i++)

23

printf(n%dH,a[i]);

A.9795105

B.9593103

C.957383

D.757383

108、下面程序段的運(yùn)行結(jié)果是()

inti=0,a[]={l,2,3,4,5);

do{

a[i]+=10;

}while(a[++i]>2);

for(i=0;i<5;i++)

printf(n%dH,a[i]);

A.112345B.12345C.1112131415

D.1112345

109、西面關(guān)于數(shù)組的敘述中,正確的是()

A.數(shù)組必須先定義,然后使用

B.定義數(shù)組時(shí),可不加類型說明符

C.定義數(shù)組后,可通過賦值運(yùn)算符“=”對(duì)該數(shù)組名直接賦

D.在數(shù)據(jù)類型中,數(shù)組屬于基本類型

110、一下程序段的運(yùn)行結(jié)果是()

inti=0,a[]={6,5,3,7};

24

do

a[i]++;

}while(a[i]<4);

for(i=0;i<4;i++)printf(H%dn,a[i]);

A.6537B.7563C.7537D.5673

111、有如下程序段:

intt[][3]={l,2,3,4,5,6,7,8,9,10,ll,12);

printf(,,%d\n,,,t[2][l]);

則執(zhí)行該程序段后輸出結(jié)果是()

A.8B.7C.4D.2

112、以下程序段運(yùn)行后s的值是()

inta[3][3]={l,2,3,l,2,3,l,2,3);

inti,j,s=l;

for(i=0;i<3;i++)

for(j=i;j<3;j++)s*=a[i][j];

A.18B.108C.2D.12

113、以下不能對(duì)二維數(shù)組arr進(jìn)行正確初始化的語句是()

A.intarr[2][3]={0};B.int

arr[][3]={l,2,3,4,5);

C.intarr[2H3]={{l,2},{3,4},{5,6}};D.int

arr[2][3]={{l},{3,4,5});

25

114、若有定義:血打[3][4]={{1,2},{0},{1,2,3}};則2口][1]的值

為()

A.0B.{1,2}C.1D.3

115、若有定義:inta[3][3];則表達(dá)式&a[2][l]-a的值為()

A.7B.8C.6D.9

116、若有定義:inti=O,x=O;int2[3][3]={1,2,3,4,5,6,7,8,9};則

以下程序段運(yùn)行后x的值為()

for(;i<3;i++)x+=a[i][2-i];

A.0B.12C.15D.18

117、若有定義inta[2][3];則對(duì)數(shù)組元素的非法引用的是()

A.a[0][l/2]B.C.a[4-4][0]D.

a[0][3]

118、以下數(shù)組定義中,正確的是()

A.inta[2]n={l,2,3,4,5};B.inta[][2]={{0},{}};

C.inta[2][2]={{l,2},{3}};D.inta[川={1,2,3,4};

119、若有定義inta[][3]={l,2,3,4,5,6,7,8,9};則表達(dá)式

sizeof(a)/sizeof(a[0])的值為()

A.3B.4C.5D.9

120、以下程序段運(yùn)行后s的值是()

inta[3][3]={l,2,3,4,5,l,2,3,4);

inti,j,s=l;

for(i=0;i<3;i++)

26

for(j=i+l;j<3;j++)

s*=a[i][j];

A.6B.120C.24D.480

121、設(shè)已定義:inta[H4]={0,0};則下列描述錯(cuò)誤的是()

A.數(shù)組a的每個(gè)元素都可得到初值0B.二維數(shù)組a

的第一維大小為1

C.數(shù)組a的行數(shù)為1

D.只有元素a[0][0]和可得到初值0,其余元素均得

不到初值0

,,,,

122、設(shè)已定義:charstrl[10],str2[10]=Fujian;則能將字

符串"Fujian”賦給數(shù)組str1的正確語句是()

A.strl="Fujian”B.strcpy(strl,str2);C.

strcpy(str2,strl);D.strl=str2;

123、有如下定義:charstr[3][2]={卬巧;則語

句:printf(”%s”,str[0]);的輸出結(jié)果是()

A.abB.abcefC.abc\0D.abc

124>設(shè)有如下數(shù)組定義:charstr[8]={"Fujian”};則分配給

數(shù)組str的存儲(chǔ)空間是()字節(jié)

A.6B.7C.8D.9

125>若有定義:chara[]=,,abcdef,;charb[]="xyz";貝以下

程序段運(yùn)行后屏幕輸出為()

strcpy(a,b);

27

printf(H%cH,a[2]);

A.cB.zC.\0D.d

126、以下程序段運(yùn)行后屏幕輸出為()

chara[]=,,abc\OmisH;

printf(H%dH,strlen(a));

A.5B.8C.3D.4

127、若有定義:inta=2;則語句a=strcmp(Hmissn,HmissH);

運(yùn)行后a的值為()

A.1B.0C.-1D.2

128、以下對(duì)C語言字符數(shù)組描述中,正確的是()

A.可以用length函數(shù)計(jì)算字符數(shù)組中字符串的長(zhǎng)度

B.可以在賦值語句中通過賦值運(yùn)算符『”對(duì)字符數(shù)組整體

賦值

C.存放在字符數(shù)組中的字符串,以W作為該字符串結(jié)束標(biāo)

D.字符數(shù)組只能存放字符串,不能存放字符

129、以下程序段運(yùn)行后屏幕輸出為()

charstr[80];

strcpy(str,HhelloH);

printf("%dH,strlen(str));

A.5B.6C.7D.80

130、若有定義:charstrl[6]=nabcdmH,*ps,*str2=HabcdefH;

28

則()是正確的

A.strcpy(strl,str2);B.表達(dá)式strcmp(strl,str2)的值

大于0

C.strl=str2;D.表達(dá)式strlen(strl)的值為6

131、已有定義:charstrl[15]={"university"},str2[15];則以

下語句中正確的是O

A.str2=strl;B.str2="college”;C.

scanf(“%s”,&str2);D.printf(“%s”,strl);

132、設(shè)已定義:charsl[20]=,,Youare”,s2[9]="welcome!”;

若要形成字符串"Youarewelcome!”,正確的語句是()

A.strcat(sl,s2);B.strcpy(sl,s2);C.sl+s2;

D.sl&s2

函數(shù)

133、在C語言中,數(shù)組名作為函數(shù)調(diào)用的實(shí)參時(shí),傳遞給

形參的是()

A.數(shù)組元素的個(gè)數(shù)B.數(shù)組的第一個(gè)元素值

C.數(shù)組中全部元素的值D.數(shù)組的首地址

134、以下程序的運(yùn)行結(jié)果是()

intfun(intarray[4][4])

intj;

29

for(j=0;j<4;j++)printf(H%2dn,array[2][j]);

printf(H\n”);

)

rnainQ

(

inta[4][4]={0,1,2,0,1,0,0,4,2,0,0,5,0,4,5,0);

fun(a);

)

A.2005B.1004C.0120D.045

0

135、C語言允許函數(shù)值類型缺省定義,此時(shí)該函數(shù)值隱含

的類型是()

A.float型B.long型C.int型D.

double型

136、以下程序運(yùn)行后屏幕輸出為()

#include<studio.h>

intf(intx,inty)

(

return(x+y);

)

mainQ

30

inta=2,b=3,c;

c=f(a,b);

printf("%d+%d=%d\nn,a,b,c);

)

A.0B.2+3=5C.2+3=0D.3+2=5

137、以下程序運(yùn)行后屏幕輸出為()

#include<stdio.h>

inta=2,b=3;

intmax(inta,intb)

(

intc;

c=a>b?a:b;

return(c);

)

main()

(

inta=4;

printf(H%dM,max(a,b));

)

A.3,2B.2C.3D.4

138、以下程序的運(yùn)行結(jié)果是()

fun(inti)

31

inta=2;

a=i++;

printf(H%dH,a);

mainO

(

inta=5,c=3;

fun(c);

printf(H%dH,a);

)

A.45B.35C.44D.33

139、若有如下函數(shù)定義:

intfun()

(

staticintk=O;

return++k;

)

以下程序段運(yùn)行后屏幕輸出為()

inti;

for(i=l;i<=5;i++)fun();

printf(H%dH,fun());

32

A.0B.1C.5D.6

140、下面程序的輸出結(jié)果是:()

#include<stdio.h>

intglobal=100;

fun()

{

intglobal=5;

return++global;

)

voidmainO

(

printf(H%d\nH,funO);

)

A.100B.101C.5D.6

141、下列關(guān)于C語言函數(shù)的描述中,正確的是()

A.函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套

B.函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套

C.函數(shù)的定義和函數(shù)的調(diào)用都可以嵌套

D.函數(shù)的定義和函數(shù)的調(diào)用都不可以嵌套

142、以下程序的運(yùn)行結(jié)果是()

fun(intx,inty)

33

intz;

z=(x<y)?(x+y):(x-y);

return(z);

)

mainO

{

inta=10,b=6;

printf(H%d\nH,fun(a,b));

)

A.4B.6C.10D.6

143、以下程序運(yùn)行結(jié)果是()

voidmainO

(

intmin(floatx,floaty);

floata=-7.9,b=-6.3;

intc;

c=min(a,b);

printf(H%d\nH,c);

)

intmin(floatx,floaty)

floatz;

34

if(x>y)z=y;

elsez=x;

return(z);

)

A.-7.9B.-7C.-6.3D.-6

144、以下程序的運(yùn)行結(jié)果是()

^defineM(a,b)a*b

mainQ

(

intx=3,y=2,sl,s2;

sl=M(x+y,x-y);

s2=M(x-y,x+y);

printf(H%d,%d\nn,sl,s2);

)

A.-1,7B.5,5C.7,-1D.5,-5

145、以下敘述中,正確的是()

A."#definePRICE=30”定義了與30等價(jià)的符號(hào)常量

PRICE

B.預(yù)編譯處理命令行都必須以“#"開頭

C.程序中使用帶參的宏時(shí),參數(shù)類型要與宏定義時(shí)一致

D.宏名只能包含大寫字母和數(shù)字字符

146、以下敘述中,正確的是()

35

A.宏展開不占用運(yùn)行空間,只占用編譯時(shí)間

B.預(yù)編譯處理命令行必須以分號(hào)結(jié)束

C.一個(gè)源程序只能有一個(gè)預(yù)編譯處理命令行

D.使用帶參數(shù)的宏定義時(shí),應(yīng)該說明每個(gè)參數(shù)的數(shù)據(jù)類型

147、以下的敘述中不正確的是()

A.宏展開不占用運(yùn)行時(shí)間,只占用編譯時(shí)間B.宏

名無類型

C.宏名必須用大寫字母表示D.預(yù)

處理命令行都必須以#號(hào)開始

148、若有定義:#definePI3,在表達(dá)式PI*2*2的值為()

A.12B.4C.3D.不確定

149、以下程序運(yùn)行后,屏幕輸出為()

//defineMIN(a,b)((a)<(b)?(a):(b))

mainO

(

intx=2,y=3,z;

z=2*MIN(x,y);

printf(H%du,z);

)

A.2B.3C.4D.6

150>下列#include命令中,正確的是()

A.#inclue[string.h]B.#include{string.h}

36

C.#include(string.h)D.#include<string.h>

151、下面程序的輸出結(jié)果是()

#include<stdio.h>

#defineONE1

#defineTWOONE+1

#defineTHREETWO+1

voidmain()

(

printf(H%d\nH,THREE-ONE);

)

A.產(chǎn)生錯(cuò)誤B.1C.2D.3

152、以下敘述中正確的是()

A.預(yù)處理命令行必須位于C源程序的起始位置

B.在C語言中,預(yù)處理命令行都以“#”開頭

C.每個(gè)C程序必須在開頭包含預(yù)處理命令行:

#include<stdio.h>

D.C語言的預(yù)處理只能實(shí)現(xiàn)宏定義和條件編譯的功能

153、以下程序的運(yùn)行結(jié)果是()

#defineADD(x)x+x

main()

intm=l,n=2,k;

37

k=ADD(m+n)*3;

printf(H%dH,k);

)

A.9B.10C.12D.18

154、下面程序的運(yùn)行結(jié)果是()

^defineM10

^defineS(x)x*x

#defineF(x)(x*x)

mainO

(

intnl,n2;

nl=1000/S(M);

n2=1000/F(M);

printf(H%d,%d\nn,nl,n2);

)

A.10,10B.1000,10C.10,1000D.

1000,1000

指針

155、設(shè)有以下語句,則()是對(duì)a數(shù)組元素的不正確引用,

其中0<=i<10o

inta[10]={0,l,2,3,4,5,6,7,8,9},*p=a;

38

A.a[p-a]B.*(&a[i])C.p[i]D.

*(*(a+i))

156、若有定義int*pl,*p2;則指針變量pl、p2不能進(jìn)行運(yùn)

算的是O

A.<B.=C.+D.-

157、以下關(guān)于指針概念的敘述中,錯(cuò)誤的是()

A.一個(gè)指針變量只能指向同一類型的變量B.一個(gè)變

量的地址稱為該變量的指針

C.兩個(gè)同類型的指針變量可以作加減運(yùn)算

D.任何指針變量都可以與空指針NULL進(jìn)行比較

158、以下程序段運(yùn)行后*(p+3)的值為()

chara[]="good”;

char*p;

P=a;

A.dB.,(rc.存放d的地址D「(r

159、以下程序段運(yùn)行后*(++p)的值為()

chara[5]=,,work?,;

char*p;

P=a;

A.4w5B.存放W的地址C.QD.存

放,o,的地址

160、若有定義:int*p,a=4;p=&a;則以下均代表地址的是()

39

A.a,pB.&a,pC.&a,*pD.a,*p

161、若有說明語句:double*p,a;則能通過scanf語句正確

給輸入項(xiàng)讀入數(shù)據(jù)的程序段是O

A.*p=&a;scanf(<<%lf,,p);B.

*p=&a;scanf(tt%lf,,*p);

C.p=&a,scanf(tt%lf,,*p);D.p=&a;scanf(<t%If,,p);

162>若已定義:intx=12;對(duì)①int*p=&x;和②*p=x;這兩條

語句的正確理解是()

A.語句①是在對(duì)指針變量p定義時(shí)初始化,使p指向x;而

語句②是將變量x的值賦給指針變量p所指向的變量

B.語句①和②中的*p含義相同,都表示給指針變量賦值

C.語句①是在對(duì)指針變量p定義時(shí)初始化,使p指向x;而

語句②是將變量x的值賦給指針變量p

D.語句①和②的執(zhí)行結(jié)果都是把變量x的地址賦給指針變

量P

163、下面語句正確的是()

A.int*p;*p=20B.char

*s=,,abcdef,;printf(tt%s\n,,,s);

C.charstr[]=,,abcd,,;str++;D.char

str[]={4a,,,b,,,c,};printf(u%s,,,str);

164、若有定義inta[2][3],*p=a;則以下不能表示數(shù)組元素

的是()

40

A.*(a[l]+2)B.*(p[l]+2)C.p[5]D.

*(p+5)

165>若已定義:int2=5右;且p=&a;則以下表示中不正確的

是()

A.&(*p)==&aB.*(&a)==aC.&(*p)==p

D.*(p++)==a++

166、若有以下程序段,其中0v=i<4,0<=j<3,則不能正確

訪問a數(shù)組元素的是()

inti,j,(*p)[3];

inta[][3]={l,2,3,4,5,6,7,8,9,10,ll,12);

P=a;

A.*(*(a+i)+j)B.C.r(p+i))[j]

D.p[i]+j

167、以下程序段的運(yùn)行結(jié)果是()

intx[]={2,3,4,5,6,7},*p=x;

inti,s=O;

for(i=l;i<6;i++)s+=p[i++];

printf(H%du,s);

A.12B.15C.25D.27

168、下面程序的運(yùn)行結(jié)果是()

main()

41

intx=36,y=63;

int*p,*q,*t;

p=&x;q=&y;

t=p;

p=q;

q=t;

printf(n%d,%d\nn,x,y);

)

A.36,36B.63,63C.36,63D.63,36

169、以下程序段運(yùn)行后x的值為()

inta[]={l,2,3,4,5,6,7};

inti,x,*p;

x=l;

p=&a[2];

for(i=0;i<3;i++)

x*=*(p+i);

A.不確定B.24C.120D.60

170、以下程序段運(yùn)行后x的值為()

inta[]={l,2,3},b[]={4,2,5);

int*p,*q;

inti,x;

p=a;q=b;

42

for(i=0;i<3;i++)

if(*(p+i)==*(q+i))

x=*(p+i)*2;

A.2B.4C.5D.不確定

171、以下程序運(yùn)行結(jié)果是()

mainO

(

chara[]="1357”,*p;

for(p=a;p<a+4;p++)

printf(H%sH,p);

)

A.1357B.1357357577C.7531D.

7531531311

172、下面程序的輸出結(jié)果是()

#include<stdio.h>

voidmain()

(

inti;

char*s=Habc";

for(i=0;i<3;i++)

printf(H%s\nM,s+i);

43

A.abc

be

c

B.c

be

abc

C.abc

c

be

D.a

ab

abc

173、下面程序的輸出結(jié)果是()

#include<stdio.h>

voidmain()

(

char*str=n12345H,*ps=str+4;

printf(n%c\nn,ps[-4]);

)

A.1B.2C.3D.錯(cuò)誤

44

174、以下程序執(zhí)行時(shí),輸入12345V回車〉,輸出為()

#include<stdio.h>

#defineN5

voidmain()

(

inta[NJ;

int*p=a;

whi!e(p<a+N)

scanf("%dH,p++);

while(p>a)

printf(,,%d,,,*(-p));

)

A.54321B.12345C.23451D.43

215

175.以下程序段的運(yùn)行結(jié)果是()

intx[]={2,3,4,5,6,7}/p=x;

inti,s=0;

for(i=l;i<6;i+=2)s+=*(p+i);3+5+7

printf(H%dH,s);

A.27B.25C.12D.15

176.以下程序運(yùn)行結(jié)果()

main()

45

inta[]={9,8,7,6,5,4},*p,*q,i;

p=a;q=p+5;

for(i=0;i<6;i++)

printf(n%d%dn,*(p+

溫馨提示

  • 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)論