2020年C語(yǔ)言程序設(shè)計(jì)期末測(cè)試題庫(kù)388題(含參考答案)_第1頁(yè)
2020年C語(yǔ)言程序設(shè)計(jì)期末測(cè)試題庫(kù)388題(含參考答案)_第2頁(yè)
2020年C語(yǔ)言程序設(shè)計(jì)期末測(cè)試題庫(kù)388題(含參考答案)_第3頁(yè)
2020年C語(yǔ)言程序設(shè)計(jì)期末測(cè)試題庫(kù)388題(含參考答案)_第4頁(yè)
2020年C語(yǔ)言程序設(shè)計(jì)期末測(cè)試題庫(kù)388題(含參考答案)_第5頁(yè)
已閱讀5頁(yè),還剩97頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

2020年C語(yǔ)言程序設(shè)計(jì)期末考試題庫(kù)388題

一、選擇題

1.設(shè)變量a是整型,f是實(shí)型,i是雙精度型,則表達(dá)式10+R+i*f值的數(shù)據(jù)類型為

A)int

B)float

C)double

D)不確定”

答案:C

2.下面程序的功能是在輸入的.批正整數(shù)中求出最大者,輸入0結(jié)束循環(huán),請(qǐng)選擇填空。

main()

{inta,max=0;

scanf(,H,%d,H',&

A)

while([1])

{if(max<amax=a;

scanf(,H'%d'H",&

A);)

printf(u',%d"",max);}

[1]

A)a==o

B)a

C)!a==l

D)!a"

答案:B

3.根據(jù)下面的程序及數(shù)據(jù)的輸入方式和輸出形式,程序中輸入語(yǔ)句的正確形式應(yīng)該為:

main()

{charch1,ch2,ch3;(輸入語(yǔ)句)

printf(n"%c%c%c,H,,ch1,ch2,ch3);}

輸入形式:ABC

輸出形式:AB

A)scanf(n,,%c%c%c"n,&chI,&ch2,&ch3);

B)scanf(,n,%c,%c,%c,M,,&chI,&ch2,&ch3);

C)scanf(",'%c%c%c'M,,&chl,&ch2,&ch3);

D)scanf(,,,,%c%c"',,&chl,&ch2,&ch3);"

答案:A

4.以下說(shuō)法正確的是:

A)輸入項(xiàng)可以為-實(shí)型常量,如scanf("“%f"',3.5);

B)只有格式控制,沒有輸入項(xiàng),也能進(jìn)行正確輸入,如scanf(""a=%d,b=%d"");

C)當(dāng)輸入-個(gè)實(shí)型數(shù)據(jù)時(shí),格式控制部分應(yīng)規(guī)定小數(shù)點(diǎn)后的位數(shù),如scanf(""%4.2f",,&f);

D)當(dāng)輸入數(shù)據(jù)時(shí),必須指明變量的地址,如scanf(""%T&f)「

答案:D

5.已有如下定義和輸入語(yǔ)句,若要求al,a2,cl,c2的值分別為10,20,A,B,當(dāng)從第1列開始輸入

數(shù)據(jù)時(shí),正確的數(shù)據(jù)輸入方式是:

intal,a2;charcl,c2;

scanf(""%d%d"",&al,&a2);scanf(""%c%c"",&cl,&c2);

A)1020AB<CR>

B)1020<CR>AB<CR>

C)1020AB<CR>

D)1020AB<CR>"

答案:D

6.已有定義intx:floaty;且執(zhí)行scanf(""%3d%f"",&x成y);語(yǔ)句,若從第1列開始輸入數(shù)據(jù)

12345678(回車),則x的值為

A)12345

B)123

C)45

D)345"

答案:B

7.已有定義inta=-2;和輸出語(yǔ)句:printf(""%81x"",

A);以下正確的敘述是:

A)整型變量的輸出格式符只有%d-種

B)%x是格式符的-種,它可以適用于任何-種類型的數(shù)據(jù)

C)%x是格式符的-種,其變量的值按+六進(jìn)制輸出,但%81x是錯(cuò)誤的

D)%81x不是錯(cuò)誤的格式符,其中數(shù)字8規(guī)定了輸出字段的寬度"

答案:D

8.printf函數(shù)中用到格式符%5s,其中數(shù)字5表示輸出的字符串占用5歹h如果字符串長(zhǎng)度

小于5,則輸出按方式。

A)從左起輸出該字串,右補(bǔ)空格

B)按原字符長(zhǎng)從左向右全部輸出

C)右對(duì)齊輸出該字串,左補(bǔ)空格

D)輸出錯(cuò)誤信息"

答案:C

9.設(shè)C語(yǔ)言中,-個(gè)int型數(shù)據(jù)在內(nèi)存中占2個(gè)字節(jié),則unsignedint型數(shù)據(jù)的取值范圍為:

A)0~255

B)0-32767

00—65535

D)0?2147483647”

答案:C

10.表達(dá)式18/4*sqrt(4.0)/8值的數(shù)據(jù)類型為:

A)int

B)float

C)double

D)不確定”

答案:C

11.以下能正確地定義整型變量a,b和c并為其賦初值5的語(yǔ)句是

A)inta=b=c=5;

B)inta,b,c=5;

C)a=5,b=5,c=5;

D)a=b=c=5;"

答案:A

12.下面四個(gè)選項(xiàng)中,均是非法常量的選項(xiàng)是。

A)W

B)N

C)-0xl8

D)0xabc

-0fff\0TOH77^01

'XOxa'lZ^GOxf'a

答案:A

13.已知ch是字符型變量,下面正確的賦值語(yǔ)句是

A)ch=,123';

B)ch=f\xff;

C)ch=,\08';

D)ch=u'V,;n

答案:B

14.若有定義:inta=7;floatx=2.5,產(chǎn)4.7;則表達(dá)式x+a%3*(int)(x+y)%2/4的值是

A)2.500000

B)2.750000

Q3.500000

D)0.000000"

答案:A

15.為了避免在嵌套的條件語(yǔ)句if.else中產(chǎn)生二義性,C語(yǔ)言規(guī)定else子句總是與()配對(duì)。

A)縮排位置相同的if

B)其之前最近的if

C)之后最近的if

D)同-行上的if

答案:B

16.已知字母A的ASCII碼為10進(jìn)制數(shù)65,且c2為字符型,則執(zhí)行語(yǔ)句c2='A'+'6'」3';后,c2

中的值為

A)D

B)68

C)不確定的值

D)C"

答案:A

17.以下符合C語(yǔ)言語(yǔ)法的賦值表達(dá)式是

A)d=9+e+f=d+9

B)d=9+e,f=d+9

C)d=9+e,e++,d+9

D)d=9+e++=d+7”

答案:B

18.以下正確的敘述是:

A)在C程序中,每行中只能寫一條語(yǔ)句

B)若a是實(shí)型變量,C程序中允許賦值a=10,因此實(shí)型變量中允許存放整型數(shù)

C)在C程序中,無(wú)論是整數(shù)還是實(shí)數(shù),都能被準(zhǔn)確無(wú)誤地表示

D)在C程序中,%是只能用于整數(shù)運(yùn)算的運(yùn)算符”

答案:D

19.以下不正確的敘述是

A)在C程序中,逗號(hào)運(yùn)算符的優(yōu)先級(jí)最低

B)在C程序中,APH和aph是兩個(gè)不同的變量

C)若a和b類型相同,在執(zhí)行了賦值表達(dá)式a=b后b中的值將放人a中,而b中的值不變。

D)當(dāng)從犍盤輸入數(shù)據(jù)時(shí),對(duì)于整型變量只能輸入整型數(shù)值,對(duì)于實(shí)型變量只能輸入實(shí)型數(shù)

值。"

答案:D

20.已知各變量的類型說(shuō)明如下:

inti=8,k,a,b;

unsignedlongw=5;

doublex=1.42,y=5.2;

則以下符合C語(yǔ)言語(yǔ)法的表達(dá)式是:

A)a+=a-=(b=4)*(a=3)

B)a=a*3=2

C)x%(-3)

D)y=float(l)n

答案:A

21.已知各變量的類型說(shuō)明如下:

intk,a,b;

unsignedlongw=5;

doublex=1.42;

則以下不符合C語(yǔ)言語(yǔ)法的表達(dá)式是:

A)x%(-3)

B)w+=-2

C)k=(a=2,b=3,a+

B)

D)a+=a-=(b=4)*(a=3)u

答案:A

22.若有代數(shù)式3ae/bc,則不正確的C語(yǔ)言表達(dá)式是:

A)a/b/c*e*3

B)3*a*e/b/c

C)3*a*e/b*c

D)a*e/c/b*3"

答案:C

23.下面不正確的字符串常量是。

A)'abc'

C),n,0nM

答案:A

24.在C語(yǔ)言中,char型數(shù)據(jù)在內(nèi)存中的存儲(chǔ)形式是:

A)補(bǔ)碼

B)反碼

C)原碼

D)ASCII碼”

答案:D

25.當(dāng)a=l,b=3,c=5,d=4,執(zhí)行完下面1段程序后x的值是:

if(a<

B)

if(c<

D)x=l;

else

if(a<

C)

if(b<

D)x=2;

elsex=3;

elsex=6;

elsex=7;

A)18

B)2

C)3

D)6"

答案:B

26.若a、b>cl、c2>x、y、均是整型變量,正確的swilch語(yǔ)句是

A)swich(a+

B);

B)switch(a*a+b*

B)

{easel:y=a+b;break;{case3:

caseO:y=a-b;break;casel:y=a+b;break;

}case3:y=b-a,break;

1

C)switcha

D)switch(a-

B)

{casec1:y=a-b;break{default:y=a*b;break

casec2:x=a;}:d;breakcase3:case4:x=a4-b;break

default:x=a+b;caselO:casel1:y=a-b;break;

}}“

答案:D

27.程序的功能是從鍵盤輸入的字符中統(tǒng)計(jì)出大寫字母和小寫字母的個(gè)數(shù),并輸出m、n中

的較大者,請(qǐng)選擇填空:

#indude""stdio.h""

main()

{intm=O,n=O;

chare;

while"[1])!='\n')

{if(c>='A&&C<='Z')m++;

if(c>-a,&&c<=,z')n++;}

printf(',n%d\n,n,,m<n?n:m);}

[1]

A)c=gets()

B)getchar()

C)c=getchar()

D)scanf("“%c””,

C)M

答案:c

28.以下正確的描述是。

A)continue語(yǔ)句的作用是結(jié)束整個(gè)循環(huán)的執(zhí)行

B)只能在循環(huán)體內(nèi)和switch語(yǔ)句體內(nèi)使用break語(yǔ)句

C)在循環(huán)體內(nèi)使用break語(yǔ)句或continue語(yǔ)句的作用相同

D)從多層循環(huán)嵌套中退出時(shí),只能使用goto語(yǔ)句”

答案:B

29.有以下程序段

intx=0,s=0;

while(!x!=0)s+=++x;

printf(""%d"",s);

A)運(yùn)行程序段后輸出0

B)運(yùn)行程序段后輸出1

C)程序段中的控制表達(dá)式是非法的

D)程序段執(zhí)行無(wú)限次"

答案:B

30.執(zhí)行以下程序段后、變量a,b,c的值分別是o

intx=10,y=9;inta,b,c;

a=(--x==y++)?--x:++y;

b=x++;

c=y;

A)a=9,b=9,c=9

B)a=8,b=8,c=10

C)a=9,b=10,c=9

D)a=l,b=ll,c=10"

答案:B

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

main()

{intk=4,a=3,b=2,c=1;

printf(,M,\n%d\nu,*,k<a?k:c<b?c:

A);)

A)4

B)3

C)2

D)l”

答案:D

32.若運(yùn)行時(shí)給變量x輸入12,則以下程序的運(yùn)行結(jié)果是:

main()

{intx,y;scanf(',',%d",',&x);

y=x>12?x+10:x-12;

printf(',',%d\n,,,\y);)

A)0

B)22

C)12

D)10u

答案:A

33.若有條件表達(dá)式(exp)?a++:b-,則以下表達(dá)式中能完全等價(jià)于表達(dá)式(exp)的是:

A)(exp==O)

B)(exp!=O)

C)(exp==l)

D)(exp!=l)M

答案:B

34.以下不正確的語(yǔ)句為:

A)if(x>y);

B)if(x=y)&&(x!=O)x+=y;

C)if(x!=y)scanf(,,,,%d,''',&x);elsescanf(',',%dnn,&y);

D)if(x<y){x++;y++;}”

答案:B

35.有輸入語(yǔ)句:scanf(""a=%d,b=%d,c=%d"”,&a,&b,&

C);為使變量a的值為l,b為3,c為2,從鍵盤輸入數(shù)據(jù)的正確形式應(yīng)當(dāng)是

A)132(回車)

B)l,3,2(回車)

C)a=lb=3c=2(回車)

D)a=l,b=3,c=2(回車)”

答案:D

36.以下程序的輸出結(jié)果是:

main()

{inta=1OO,x=l0,y=20,okl=5,ok2=0;

if(x<y)

if(y!=10)

if(!okl)a=l;

else

if(ok2)a=10;

a=-l;

printf(""%d\n"",

A);

)

A)l

B)0

C)-l

D)值不確定"

答案:C

37.下面四個(gè)選項(xiàng)中,均是合法轉(zhuǎn)義字符的選項(xiàng)是

A)V

B)'V

cy\oi8‘

D)NO'

'\n"\xabMxlfH

答案:A

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

main()

{intm=5;

if(m++>5)printf(',n%d\n,,n,m);

elseprintf(n"%d\nM'\m-);}

A)4

B)5

C)6

D)7U

答案:c

39.執(zhí)行以下語(yǔ)句后a的值為:

inta,b,c;a=b=c=1;++a||++b&&++c;

A)錯(cuò)誤

B)0

C)2

D)lu

答案:C

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

#includeHUstdio.h,,n

main()

{inta,b,d=241;a=d/l00%9;b=(-1)&&(-!);

printf('M,%d,%d,H',a,

B);)

A)6,l

B)2,l

C)6,0

D)2,0"

答案:B

41.已知x=43,ch='A;y=0則表達(dá)式(x>=y&&ch〈B&&!Y)的值是

A)0

B)語(yǔ)法錯(cuò)

C)1

D)""假"""

答案:c

42.設(shè)x,y和z是int型變量,且x=3,y=4,z=5,則下面表達(dá)式中值為0的是

A)'y'&&'y,

B)x<=y

C)x||y+z&&y-z

D)!(x<y)&&!z||l)n

答案:D

43.判斷char型變量ch是否為大寫字母的正確表達(dá)式是。

A)'A,<=ch<='Z,

B)(ch>='A,)&(ch<=,Z,)

C)(ch>='A,)&&(ch<=,Z')

D)(A<=ch)AND(Z>=ch)”

答案:C

44.表示圖中坐標(biāo)軸上陰影部分的正確表達(dá)式是:

/////||//////|

_______________________________________________->x

abc

A)(x<=

A)&&(x>=

B)&&(x<=

C)

B)(x<=

A)||(b<=x<=

C)

C)(x<=

A)||(x>=

B)&&(x<二

C)

D)(x<=

A)&&(b<=x<=

C)

II

答案:c

45.下關(guān)于運(yùn)算符優(yōu)先順序的描述中正確的是。

A)關(guān)系運(yùn)算符V算術(shù)運(yùn)算符<賦值運(yùn)算符〈邏輯與運(yùn)算符

B)邏輯運(yùn)算符〈關(guān)系運(yùn)算符〈算術(shù)運(yùn)算符〈賦值運(yùn)算符

C)賦值運(yùn)算符〈邏輯與運(yùn)算符〈關(guān)系運(yùn)算符V算術(shù)運(yùn)算符

D)算術(shù)運(yùn)算符〈關(guān)系運(yùn)算符〈賦值運(yùn)算符〈邏輯與運(yùn)算符"

答案:C

46.邏輯運(yùn)算符兩側(cè)運(yùn)算對(duì)象的數(shù)據(jù)類型____。

A)只能是0或1

B)只能是0或非0正數(shù)

C)只能是整型或字符型數(shù)據(jù)

D)可以是任何類型的數(shù)據(jù)”

答案:D

47.x,y,z均為int型變量,則執(zhí)行語(yǔ)句x=(y=(z=10)+5)-5;后,x,y和c的值是:

A)x=10

B)x=10

C)x=10

D)x=10

y=15y=10y=10y=5

z=10z=10z=15z=10”

答案:A

48.以下程序的輸出結(jié)果是:

main()

{intx=2,y=-l,z=2;

if(x<y)

if(y<O)z=O;

elsez+=1;

printf('M,%d\n','\z);

}

A)3

B)2

C)1

D)OU

答案:B

49.設(shè)有說(shuō)明int(*ptr)[m];其中的標(biāo)識(shí)符ptr是()。

(

A)M個(gè)指向整型變量的指針

(

B)指向M個(gè)整型變量的函數(shù)指針

(

C)一個(gè)指向具有M個(gè)整型元素的一維數(shù)組的指針

(

D)具有M個(gè)指針元素的一維指針數(shù)組,每個(gè)元素都只能指向整型量”

答案:C

50.下面程序的輸出結(jié)果為

structst

{intx;

int*y;

}*p;

intdt[4]={10,20,30,40);

structstaa[4]={50,&dt[0],60,&dt[1],

70,&dt[2],80,&dt[3]};

main()

{p=aa;

printf('M,%d\n','\++p->x);

printf(""%d\n"”,(++p)->x);

printf(,,,,%d\n,,,,,++(*p->y));

)

A)10

B)50

C)51

D)60

20606070

20212131"

答案:C

51.下列分支語(yǔ)句合法的是()。

(

A)if(a>

C)m=aelsem=c

(

B)ifa>c(ifa>

B)m=a

(

C)if(a>b&&a>

C)m=a

;(

D)case6,7:printf(","reset\n"n)

答案:C

52.下列程序執(zhí)行后的輸出結(jié)果是

A)-32767

B)FFFE

C)-l

D)-32768

main()

{charx=OxFFFF;printf('M,%d\n'M,,x-);}“

答案:C

53.下列程序執(zhí)行后的輸出結(jié)果是

A)6

B)8

C)10

D)12

#defineMA(x)x*(x-1)

main()

{inta=l,b=2;printf(,,u%d\n"",MA(l+a+

B));『

答案:B

54.請(qǐng)讀程序:

intx,y;

for(x=l;x<5;x+=2)

{for(y=l;y<5;y++)

printf(,M,%3d,,n,x*y);

if(y==5)printf("“\n””);

)

A、1234

0000

B、0135

0012

C、1234

36912

D、152

8

0101M

答案:C

55.下列程序的運(yùn)行結(jié)果是

A)63

B)36

C)編譯出錯(cuò)

D)00

voidfun(int*a,int*

B)

{int*k;

k=a;a=b;b=k;

)

main()

{inta=3,b=6,*x=&a,*y=&b;

fun(x,y);

printf(""%d%d"",a,

B);

)"

答案:B

56.下列程序的輸出結(jié)果是

A)5

B)6

C)7

D)8

structabc

{inta,b,c;};

main()

{structabcs[2]={{1,2,3},{4,5,6}};intt;

t=s[O].a+s[l].b;

printf(""%d\n'M,,t);

}”

答案:B

57.下列程序的輸出結(jié)果是

A)xyabcAB

B)abcABz

C)Ababcz

D)xycdBCD

main()

{char*pl,*p2,str[50]=,,nxyz,n,;

pl=,,nabcd"n;

p2=,H,ABCD'u,;

strcpy(str+2,strcat(p1+2,p2+1));

printf('M,%s,H',str);}

答案:D

58.設(shè)有以下說(shuō)明語(yǔ)句

,則下面的敘述中不正確的是

structex

{intx;floaty;charz;}example;

A)struct結(jié)構(gòu)體類型的關(guān)鍵字

B)example是結(jié)構(gòu)體類型名

C)x,y,z都是結(jié)構(gòu)體成員名

D)structex是結(jié)構(gòu)體類型”

答案:B

59.下面四個(gè)選項(xiàng)中,均是不正確的八進(jìn)制數(shù)或十六進(jìn)制數(shù)的選項(xiàng)是。

A)016

B)Oabc

C)010

D)0al2

Ox8fO17-Oxll7ff

0180x80x16-123M

答案:D

60.為表示關(guān)系x2y2z,應(yīng)使用C語(yǔ)言表達(dá)式

A)(x>=y)&&(y>=z)B(x>=y)AND(y>=z)

C)(x>=y>=z)

D)(x>=y)&(y>=z)u

答案:A

61.下面程序的輸出是

A)0

B)1

C)3

D)6

main()

{structcmplx{intx;inty;}cnum[2]={1,3,

2,7};

printf(u"%d\n'H,,cnum[O].y/cnum[O].x*cnum[1].x);}*,

答案:D

62.設(shè)有如下函數(shù)定義:

intf(char*s)

{char*p=s;

while(*p!=,\Or)p++;

return(p-s);}

如果在主程序中用下面的語(yǔ)句調(diào)用上述函數(shù),則輸出結(jié)果為

A)3

B)6

C)8

D)0

printf(H,,%d\n,n,,f(,,ngoodbey!,M,));

n

答案:C

63.設(shè)有如下枚舉類型定義:

enumlanguage{Basic=3,Assembly,Ada=100,COBOL,Fortran};

枚舉量Fortran的值為

A)4

B)7

C)102

D)103u

答案:C

64.設(shè)有如下定義:

int(*ptr)*();

則以下敘述中正確的是

A)ptr是指向一維組數(shù)的指針變量

B)ptr是指向int型數(shù)據(jù)的指針變量

C)ptr是指向函數(shù)的指針,該函數(shù)返回一個(gè)int型數(shù)據(jù)

D)ptr是一個(gè)函數(shù)名,該函數(shù)的返回值是指向血型數(shù)據(jù)的指針”

答案:C

65.設(shè)有如下定義,若有p=&data;,則對(duì)data中的a域的正確引用是

structsk

{inta;floatb;}data,*p;

A)(*p).data.a

B)(*p).a

C)p->data.a

D)p.data.au

答案:B

66.定義如下變量和數(shù)組,則下面語(yǔ)句的輸出結(jié)果是:

intk;inta[3][3]={1,2,3,4,5,6,7,8,9);

for(k=0;k<3;k++)printf(',H%d'M;a[k][2-k]);

A)357

B)369

C)159

D)147u

答案:A

67.設(shè)x、y、t均為int型變量,則執(zhí)行語(yǔ)句:x=y=3;t=++x||++y;后,y的值為

A)不定值

B)4

C)3

D)l"

答案:C

68.設(shè)x的值為4,則表達(dá)式(++x)+(++x)+(++x)的值是

A:12;B:18;C:16;D:21

答案:B

69.設(shè)一整型(int)變量占用2個(gè)字節(jié)則下述共同體變量x所占用內(nèi)存字節(jié)數(shù)為

unionexp

(inti;

floatj;

doublek;

}x;

A、14個(gè)B、7個(gè)

C、8個(gè)D、隨機(jī)而定"

答案:c

70.以下程序的輸出結(jié)果是:

A)7

B)8

C)9

D)10

main()

{inta,b;

for(a=1,b=l;a<=100;a++)

{if(b>=20)break;

if(b%3==l)

{b+=3;

continue;

)

b-=5;

)

printf(u,,%d\n,,M,

A);

答案:B

71.在C語(yǔ)言中,fclose()函數(shù)返回一時(shí),表示關(guān)閉不成功

(A)0

(B)-l

(C)EOF

(D)非零值”

答案:D

72.設(shè)有以下說(shuō)明語(yǔ)句

,則下面敘述中正確的是

typedefstruct

(intn;

charch[8J;

}PER;

A)PER是結(jié)構(gòu)體變量名

B)PER是結(jié)構(gòu)體類型名

C)typedefstruct是結(jié)構(gòu)體類型

D)struct是結(jié)構(gòu)體類型名"

答案:B

73.下面程序段是輸出兩個(gè)字符串中對(duì)應(yīng)字符相等的字符。請(qǐng)選擇填空。

charx口二”"programming"";

chary口h'Fortran"”;

inti=0;

while(x[i]!=>\0'&&y[i]!,\0,)

{if(xti]==y[i])printfC,f%c"",);

elsei++;}}

A)x[i++]

B)y[++i]

C)x[i]

D)y[i]n

答案:A

74.下面程序的運(yùn)行結(jié)果是。

main()

{intnum=0;

whiie(num<=2)

{num++;

printf(',,,%d\n",\num);}}

A)1

B)1

C)1

D)1

222

33

4”

答案:B

75.下面四個(gè)選項(xiàng)中,均是合法浮點(diǎn)數(shù)的選項(xiàng)是

A)+le+l

B)-.6O

C)123e

D)-e3

5e-9.412e-41.2e-.4.8e4

03e2-8e5+2e-15.e-0H

答案:B

76.下面四個(gè)選項(xiàng)中,均是不合法的浮點(diǎn)數(shù)的選項(xiàng)是

A)160.

B)123

C)-.18

D)-e3

0.122e4.2123e4.234

e3.e50.01e3"

答案:B

77.C語(yǔ)言中的標(biāo)識(shí)符只能由字母、數(shù)字和下劃線三種字符組成,且第-個(gè)字符

A)必須為字母

B)必須為下劃線

C)必須為字母或下劃線

D)可以是字母,數(shù)字和下劃線中任-種字符”

答案:C

78.下面四個(gè)選項(xiàng)中,均是不合法的用戶標(biāo)識(shí)符的選項(xiàng)是。

A)A

B)float

C)b-a

D)-123

P_OIaOgototemp

do.AintINT"

答案:C

79.若x,i,j和k都是int型變量,則執(zhí)行下面表達(dá)式后x的值為

x=(i=4,j=16,k=32)

A)4

B)16

C)32

D)52"

答案:C

80.1個(gè)C語(yǔ)言程序是由

A)1個(gè)主程序和若干子程序組成

B)函數(shù)組成

C)若干過(guò)程組成

D)若干子程序組成”

答案:B

81.以下敘述不正確的是。

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

B)一個(gè)C源程序必須包含一個(gè)main函數(shù)

oc程序的基本組成單位是函數(shù)

D)在C程序中,注釋說(shuō)明只能位于一條語(yǔ)句的后面”

答案:D

82.以下敘述正確的是:

A)在C程序中,main函數(shù)必須位于程序的最前面

B)C程序的每行中只能寫一條語(yǔ)句

C)C語(yǔ)言本身沒有輸入輸出語(yǔ)句

D)在對(duì)一個(gè)C程序進(jìn)行編譯的過(guò)程中,可發(fā)現(xiàn)注釋中的拼寫錯(cuò)誤"

答案:C

83.一個(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é)束"

答案:A

84.閱讀以下程序,當(dāng)輸入數(shù)據(jù)的形式為25,13,10<CR>正確的輸出結(jié)果為:

main()

{intx,y,z

scanf(""%d%d%d"",&x,&y,&z);

printf(""x+y+z=%d\n,x+y+z);}

A)x+y+z=48

B)x+y+z=35

C)x+z=35

D)不確定值"

答案:D

85.以下不正確的定義語(yǔ)句是.

A)doublex[5]={2.0,4,0,6.0,8.0,10.0};

B)inty[5]={0,1,3,5,7,9};

C)charcl[]={T,'2','3','4','5'};

D)charc2[]=}{'\xl0','\xa','\x8'}

答案:B

86.下面程序的輸出是

A)32

B)16

C)8

D)24

typedefunion{longx[2];

intyL4J;

charz[8];

JMYTYPE;

MYTYPEthem;

main()

{printf(,H'%d\n",',sizeof(them));}u

答案:C

87.下面程序的功能是計(jì)算正整數(shù)2345的各位數(shù)字平方和,請(qǐng)選擇填空。

main()

{intn,sum=0,n=2345;

do{sum=sum+(n%10)*(n%10);

n=[2];

}while(n);

printf(',,,sum=%d"",sum);)[2]

A)n/1000

B)n/100

C)n/10

D)n%10H

答案:C

88.能正確表示””當(dāng)x的取值在[1,10]和[200,210]范圍內(nèi)為真,否則為假””的表達(dá)式是

A)(x>=l)&&(x<=10)&&(x>=200)&&(x<=210)

B)(x>=l)||(x<=10)||(x>=200)||(x<=210)

C)(x>=1)&&(X<=10)||(x>=200)&&(x<=210)

D)(x>=l)||(x<=l0)&&(x>=200)||(x<=210)"

答案:C

89.以下程序運(yùn)行后,輸出結(jié)果是

A)1

B)7

C)9

D)ll

fut(int**s,intp[2][3])

{**s=p[l][l];}

main()

{inta[2][3]={1,3,57,9,1l},*p;

p=(int*)malloc(sizeof(int));

fut(&p,

A);

printf(,,n%d\n,M,,*p);

答案:C

90.以下對(duì)結(jié)構(gòu)體類型變量的定義中,不正確的是

A)typedefstructaa

B)#defineAAstructaa

{intn;{intn;

floatm;floatm;

}AA;}tdl;

AAtd1;

C)struct

D)struct

{intn;{intn;

floatm;floatm;

}aa;}tdl;

structaatdl;u

答案:C

91.有如下函數(shù)調(diào)用語(yǔ)句

func(rec1,rec2+rec3,(rec4,rec5);

該函數(shù)調(diào)用語(yǔ)句中,含有的實(shí)參個(gè)數(shù)是

A)3

B)4

C)5

D)有語(yǔ)法錯(cuò)”

答案:D

92.有如下定義

structperson{chamame[9];intage;};

strictpersonclass[l0]={,"'Johu',,\l7,

,M,Paurn,,19

;'"Mary"n,18,

根據(jù)上述定義,能輸出字母M的語(yǔ)句是

A)prinft('M,%c\nM,,,class[3].mane);

B)pfintf(M,,%c\n,H,,class[3].name[l]);

C)prinft(,n,%c\nM,,,class[2].name[l]);

D)printf(u,,%Ac\n,M,,class[2J.name[0J);u

答案:D

93.下面是對(duì)s的初始化,其中不正確的是.

A)chars[5]={,,,'abc',H}

B)chars[5]={,a';b';c'};

C)chars[5]=',,nn,

D)chars[5]=""abcdef"';"

答案:D

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

main()

{inta[6],i;

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

{a[i]=9*(i-2+4*(i>3))%5;

printf(""%2d"",a[i]);}}

A)-40404

B)-40403

O-40443

D)-40440"

答案:C

95.以下描述中正確的是:

A)由于do-while循環(huán)中循環(huán)體語(yǔ)句只能是-條可執(zhí)行語(yǔ)句,所以循環(huán)體內(nèi)不能使用復(fù)合語(yǔ)句

B)do-while循環(huán)由do開始,用while結(jié)束,在while(表達(dá)式)后面不能寫分號(hào)

C)在do-while循環(huán)體中,-定要有能使while后表達(dá)式值變?yōu)榱?”"假"")的操作

D)do-while循環(huán)中,根據(jù)情況可以省略while"

答案:C

96.下面四個(gè)選項(xiàng)中,均是不合法的轉(zhuǎn)義字符的選項(xiàng)是

A)'\"

B)'\ioir

c)'\oir

D)'\abc'

"ww'Mor

答案:B

97.在以下定義中,標(biāo)識(shí)符p

int(*p)[3]

A)定義不合法

B)是一個(gè)指針數(shù)組名,每個(gè)元素是一個(gè)指向整數(shù)變量的指針

C)是一個(gè)指針,它指向一個(gè)具有三個(gè)元素的一維數(shù)組

D)是一個(gè)指向整型變量的指針"

答案:C

98.C語(yǔ)言中函數(shù)能否嵌套調(diào)用和遞歸調(diào)用?

A、二者均不可B、前者可,后者不可

C、前者不可,后者可D、二者均可“

答案:D

99.下面程序的功能是將小寫字母變成對(duì)應(yīng)大寫字母后的第二個(gè)字母。其中y變成A,z變

成B.請(qǐng)選擇填空。

main()

{chare;

while((c=getchar())!=,\n')

{if(c>='a,&&c<='z,)c-=30;

if(c>,z,&&c<='z,+2)

[2];}

printf(n,,%c"n,

C)}

[2]

A)c='B,

B)c='A'

C)c-=26

D)c=c+26”

答案:C

100.設(shè)以下變量均為int類型,則值不等于7的表達(dá)式是

A)(x=y=6,x+y,x+1)

B)(x=y=6,x+y,y+l)

C)(x=6,x+1,y=6,x+y)

D)(y=6,y+l,x=y,x+l)n

答案:C

101.若a=5,b=3,c=4,邏輯表達(dá)式!(a+

B)&&!c的值為(

A)0(

B)-l

(

C)l(

D)2n

答案:A

102.請(qǐng)選出以下程序段的輸出結(jié)果

A)15

B)100

C)10

D)150

#include<stdio.h>

#defineMIN(x,y)(x)<(y)?(x):(y)

main()

{inti,j,k;

i=10;j=15;

k=10*MIN(i,j);

printf(,n,%d\n,M\k);

)

ii

答案:A

103.利用數(shù)組寫出一個(gè)與int*p⑷等價(jià)的說(shuō)明

A、int&p[4];B>intp[4];

C、int**p[4];D、int*(*p[4]);"

答案:B

104.假定下列程序的可執(zhí)行文件名為prg.exe,則在該程序所在的子目錄下輸入命令

行:prghellogood〈回車>后,程序的輸出結(jié)果是

A)hellogood

B)hg

C)hel

D)hellogood

main()(intargc,char*argv[])

{inti;

if(argc<-O)return;

for(i=l;i<argc;i++)printf(""%c"",*argv[i]);

}"

答案:B

105.下面程序的功能是將字符串5中所有的字符c刪除。請(qǐng)選擇填空。

main()

{chars[80];inti,j;

gets(s);

for(i=j=0;s[i]!='\0';i++)

if(s[i]!='c')[1]

puts(s);}

[1]

A)s[j++]=s[i]

B)s[++j]=s[i];

C)s|j]=s[i];j++;

D)s|j]=s[i];"

答案:A

106.根據(jù)下面的定義,能打印出字母M的語(yǔ)句是一

A)printf('M,%c\n',M,class[3].name);

D)printf(""%c\n"”,class⑵.name[0]);

B)printf(,,,,%c\n,,,,,class[3].name[l]);

C)printf(",,%c\n,,",class[2].name[1]);

structperson{charname[9];intage;};

structpersonclass[l0]={""John"”,17,

n,'Mary'M,,18,

""Adam"',,16};H

答案:D

107.請(qǐng)讀程序:

main()

{int*p,x;

x=10;

*p=x;

printf(""%d\n"”,*p);

)

請(qǐng)判斷上面程序一

錯(cuò)誤:*p=x;

錯(cuò)誤:*p=x;

printf('M,%d\n,|,,X*p);

printf(',"%d\n',,,),*p);

正確:p=&x;

正確:p=**x;

printf(',n%d\n',M,*p);

printf(u,,%d\nMM,p);

C、錯(cuò)誤:int*p,x;

D、錯(cuò)誤:*p=x;

正確:int*(p),*(x);正確:p二&x;"

答案:A

108.以下不能對(duì)二維數(shù)組a進(jìn)行正確初始化的語(yǔ)句是

A)inta[2][3]={0};

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

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

D)inta[][3]={{1,0,1},{},{M}};H

答案:C

109.C語(yǔ)言聯(lián)合類型在任何給定時(shí)刻。

A.所有成員一直駐留在結(jié)構(gòu)中。

B.只能有一個(gè)成員駐留在結(jié)構(gòu)中。

C.部分成員駐留在結(jié)構(gòu)中。

D.沒有成員駐留在結(jié)構(gòu)中。

II

答案:B

110.有字符數(shù)組a[80]和b[80],則正確的輸出形式是.

A)puts(a,

B);

B)printf(',H%s,%s,a[],b[]);

C)putchar(a,

B);

D)puts(

A),puts(

B);"

答案:D

111.以下程序的輸出結(jié)果是一

A、5B、6C、23D、26

i=5;

i=i++*4+2;

n

答案:c

112.當(dāng)一,可以不指定數(shù)組長(zhǎng)度。

(

A)對(duì)靜態(tài)數(shù)組賦初值

(

B)對(duì)動(dòng)態(tài)數(shù)組賦初值

(

C)只給一部分元素賦值(

D)對(duì)全部數(shù)組元素賦初值”

答案:D

113.當(dāng)運(yùn)行以下程序時(shí),從鍵盤輸入:AhaMAAha<CR>(<CR)表示回車),則下面程序的運(yùn)行結(jié)

果是

main()

{chars[80],c='a';

inti=0;

scanf(,",%s"',,s);

while(s[i]!='\0')

{if(s[i]==

C)s[i]=s[i]-32;

e!seif(s[i]==c-32)s[i]=s[i]+32;

i++;}

puts(s);}

A)ahAMa

B)AhAMa

C)AhAMaahA

D)ahAMaahAn

答案:A

114.變量a所占內(nèi)存字節(jié)數(shù)是

A)4

B)5

C)6

D)8

unionU

{charst[4J;

inti;

);

structA

{intc;

unionUu;

}a;“

答案:c

115.為int類型,進(jìn)人下面的循環(huán)之前,t的值為0

,則以下敘述中正確的是

while(t=l)

A)循環(huán)控制表達(dá)式的值為0

B)循環(huán)控制表達(dá)式的值為1

C)循環(huán)控制表達(dá)式不合法

D)以上說(shuō)法都不對(duì)”

答案:B

116.不能把字符串:Hello!賦給數(shù)組b的語(yǔ)句是

A)charb|l0]={'H','e',T,T,'o','!'};

B)charb[10];b=""Hello!"";

C)charb[10];strcpy(b,""Hello!"");

D)charb[10]=""Hello!"";"

答案:B

117.當(dāng)執(zhí)行下面程序且輸入:ABC時(shí),輸出的結(jié)果是

A)ABC

B)ABC9

C)123456ABC

D)ABC456789

#include<stdio.h>

#include<string.h>

main()

{charss[10]=',n12345,,n;

gets(ss);printf(',"%s\n"",ss);}

it

答案:A

118.假定a和b為int型變量,則執(zhí)行以下語(yǔ)句后b的值為

A)9

B)-2

C)-l

D)8

a=l;b=10;

do

{b-=a;a++;}

while(b—<0);

答案:D

119.合法的數(shù)組定義是

A)inta[]=M,,string',n;

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

C)chars=,H'string'M,;

D)chara[]={0,l,2,3,4,5};M

答案:D

120.下面程序段的運(yùn)行結(jié)果是:

x=y=0;

while(x<15)y++,x+=++y;

printf(u,,%d,%d,H',y,x);

A)20,7

B)6,12

C)20,8

D)8,20”

答案:D

121.#include<stdio.h>

main()

{inta,b,c,d;

scanf(,H'%d%d"H,&a,&

B);

c=gbs(a,

B);

d=gys(a,

B);

printf(,,,,a=%db=%dgbs=%dgys=%d\n',",a,b,c,

D);

}

gbs(a,

B)

inta,b;

{intc;

a=a>O?a:-a;

b=b>O?b:-b;

c=a*b;

if(c==O)return(O);

while(a!=

B)if(a>

B)a-=b;

elseb-=a;

return(c/

A);

)

gys(a,

B)

inta,b;

{if(a*b==O)retum(O);

a=a>O?a:-a;

b=b>O?b:-b;

while(a!=

B)if(a>

B)a-=b;elseb-=a;

return(

A);

}

請(qǐng)寫出上面程序的運(yùn)行結(jié)果:

A、a=30b=63gbs=189gys=9

B、a=27b=63gbs=190gys=10

C、a=27b=63gbs=189gys=9

D、a=27b=63gbs=188gys=10H

答案:c

122.若有以下定義和語(yǔ)句:

doubler=99,*p=&r;

*p=r;

則以下正確的敘述是

A)以下兩處的*p含義相同,都說(shuō)明給指針變量p賦值

B)在""doubler=99,*p=&r;""中,把r的地址賦值給了p所指的存儲(chǔ)單元

C)語(yǔ)句""*p=r;""把變量r的值賦給指針變量p

D)語(yǔ)句""*p=r;""取變量r的值放回r中"

答案:D

123.在C程序中,可把整型數(shù)以二進(jìn)制形式存放到文件中的函數(shù)是

A)fprintf函數(shù)

B)fread函數(shù)

Ofwrite函數(shù)

D)fputc函數(shù)"

答案:A

124.若以下程序所生成的可執(zhí)行文件名為filel.exe;當(dāng)打入以下命令行執(zhí)行該程序

時(shí);FILE1CHINABEIJINGSHANGHA1

程序的輸出結(jié)果是

A、XHINVWIJINFAHANJHAIB,FILE1CHINABEIJING

C、CBSD、FCB

main(intarge,char*argv[])

{charch[7]={""65ab21""};

inti,s=0;

for(i=0;ch[i]>='0,&&ch[i]'9,;i+=2)

s=10*s+ch[i]-'0';

print(""%d\n"",s);}"

答案:A

125.若要用下面的程序片段使指針變量p指向一個(gè)存儲(chǔ)整型變量的動(dòng)態(tài)存儲(chǔ)單元:

int*p;

p=malloc(sizeof(inl));

則應(yīng)填入

A)int

B)int*

C)(*int)

D)(int*)n

答案:D

126.若要打開A盤上user子目錄下名為abc.txt的文本文件進(jìn)行讀、寫操作,下面符合此

要求的函數(shù)調(diào)用是

A)fopen(,",A:\user\abc.txt',',;'Mr,,M)

B)fopen(',nA:\\user\\abc.txt,H,,MMr+,M,)

C)fopen(,H,A:\user\abc.txt,HVH,rbMM)

C)fopen("”A:\\user\\abc.txt"“J”w"")“

答案:B

127.假定以下程序經(jīng)編譯和連接后生成可執(zhí)行文件PROGEXE,如果在此可執(zhí)行文件所在

目錄的DOS提示符下鍵入:PROGABCDEFGHIJKLc回車,,則輸出結(jié)果為

A)ABCDEFG

B)IJHL

OABCDEFGHIJKL

D)IJKLABCDEFGH

main(intargc,char*argv[J))

{while(—argc>O)printf("n%s"'\argv[argc]);

printf('H,\nMM);

}”

答案:D

128.假定建立了以下鏈表結(jié)構(gòu),指針p、q分別指向如圖所示的結(jié)點(diǎn),則以下可以將q所

指結(jié)點(diǎn)從鏈表中刪除并釋放該結(jié)點(diǎn)的語(yǔ)句組是

A)free(q);p->next=q->next;

B)(*p).next=(*q).next;free(q);

C)q=(*q).next;(*p).next=q;free(q);

D)q=q->next;p->next=q;p=p->next;free(p);"

答案:B

129.rewind函數(shù)的作用是。

A、重新打開文件

B、使文件位置指針重新回到文件末

C、使文件位置指針重新回到文件的開始

D、返回文件長(zhǎng)度值”

答案:C

130.標(biāo)準(zhǔn)函數(shù)fgets(s,n,f)的功能是

A)從文件f中讀取長(zhǎng)度為n的字符串存入指針s所指的內(nèi)存

B)從文件f中讀取長(zhǎng)度不超過(guò)n-1的字符串存入指針s所指的內(nèi)存

C)從文件f中讀取n個(gè)字符串存入指針s所指的內(nèi)存

D)從文件f中讀取長(zhǎng)度為n-1的字符串存入指針s所指的內(nèi)存”

答案:B

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

main()

(

charstr[]=n"SSSWLIA',n,c;

intk;

for(k=2;(c=str[k])!=,\0';k++)

{switch(

C)

{case,r:4-+k;break;

case'L\continue;

default:putchar(

C);continue;

)

putcharC**1);}}

A)SSW*

B)SW*

C)SW*A

D)SW”

答案:B

132.若程序中有下面的說(shuō)明和定義,

則會(huì)發(fā)生的情況是

structabc

{intx;chary;}

structabcsl,s2;

A)編譯進(jìn)錯(cuò)

B)程序?qū)㈨樌幾g'連接'執(zhí)行

C)能順利通過(guò)編譯'連接'但不能執(zhí)行

D)能順利通過(guò)編譯'但連接出錯(cuò)"

答案:A

133.若有以下說(shuō)明:

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

則數(shù)值為6的表達(dá)式是

A)*p+6

B)*(p+6)

C)*p+=5

D)p+5”

答案:C

134.請(qǐng)讀程序:

#include<stdio.h>

voidfun(int*s)

{staticintj=O;

do

s[j]+=s[j+ri;

while(++j<2);

)

main()

{intk,a[10]={l,2,3A5);

for(k=l;k<3;k++)fun(

A);

for(k=0;k<5;k++)printf(,",%d,,",a[k]);

)

程序的輸出結(jié)果是:

A)34756

B)23445

C)35745

D)1234”

答案:C

135.若有以下定義和語(yǔ)句:

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

則不能表示a數(shù)組元素的表達(dá)式是

A)*p

B)a[10J

C)*a

D)a[p-a「

答案:B

136.若有以下定義,則語(yǔ)句()是正確的。

A:s=5B:a={2;a,1.2}C:printf(,",%d\n"n,

A)D:n=a

uniondata

{inti;

chare;

floatf;

}a;

intn;

答案:c

137.若有下面的說(shuō)明和定義,

貝ljsizeof(structtest)的值是

A)12

B)16

C)14

D)9

structtest

{intml;charm2;floatm3;

unionuu{charul[5];intu2[2];}ua;

}myaa;

ii

答案:A

138.若有以下的定義:

inta[]={1,2,3,4,5,6,7,88,9,10},*p=a;

則值為3的表式是

A)p+=2,*(p++)

B)p+=2,*++p

C)p+=3,*kp++

D)p+=2,++*p”

答案:A

139.若有說(shuō)明:long*p,a;則不能通過(guò)scanf語(yǔ)句正確給輸入項(xiàng)讀入數(shù)據(jù)的程序段是

A)*p=&a;scanf(n,,%ld,H,,p);

B)p=(long*)malloc(8);scanf(u"%ld'M,,p);

C)scanf(““%ld”“,p=&

A);

D)scanf(nn%ldn",&

A);“

答案:A

140.若有說(shuō)明:inti,j=7,*p=&i;,則與i=j;等價(jià)的語(yǔ)句是

A)i=*p;

B)*p=*&j;

C)i=&j;

D)i=**p;n

答案:B

141.若有說(shuō)明語(yǔ)句:inta,b,c,*d=&c;則能正確從鍵盤讀入三個(gè)整數(shù)分別賦給變量a,b,c的語(yǔ)句

A)scanf(,n,%d%d%d',H,&a,&b,

D);

B)scanf(nu%d%d%d,H,,&a,&b,&

D);

C)scanf(""%d%d%d',M,a,b,

D);

D)scanf(,,M%d%d%d',n,a,b,*

D);“

答案:A

142.若有如下定義和語(yǔ)句,

則輸出結(jié)果是:

A)10,20

B)10J0

C)20J0

D)20,20

int**pp,*p,a=10,b=20;

MH,n,

pp=&p;p=&a;p=&b;printf(%d\n,*p,**pp);

n

答案:D

143.有下面的程序段

chara[3],b[]=""china"";a=b;

printf(""%s"",

A);

則.

A)運(yùn)行后將輸出Chm

B)運(yùn)行后將輸出Ch

C)運(yùn)行后將輸出Chi

D)編譯出錯(cuò)”

答案:D

144.以下程序的輸出結(jié)果是一

A、1,1,IB、1,0,0C、1,1,0D、1,0,1

main()

{intx,y,z;

x=y=z=0;

++x&&++y||++z;

printf("%d,%d,%d\n”,x,y,z);

答案:c

145.若指針p已正確定義,要使p指向兩個(gè)連續(xù)的整型動(dòng)態(tài)存儲(chǔ)單元,不正確的語(yǔ)句是

A)p=2*(int*)malloc(sizeof(int));

B)p=(int*)malloc(2*sizeof(int));

C)p=(int*)malloc(2*2);

D)p=(int*)malloc(2,sizeof(int));H

答案:A

146.下面程序的功能是計(jì)算:至50中是7的倍數(shù)的數(shù)值之和,請(qǐng)選擇填空。

main()

{inti,sum=0;

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

if([l])sum+=i;

printf('H,%d'H,,sum);)

A)(int)(i/7)==i/7

B)(int)i/7==i/7

C)i%7=0

D)i%7==0"

答案:D

147.若有說(shuō)明:inta[3][4];則數(shù)組a各元素

A)可在程序的運(yùn)行階段得到初值0

B)可在程序的編譯階段得到初值0

C)不能得到確定的初值

D)可在程序的編譯或運(yùn)行階段得初值0"

答案:B

148.若有說(shuō)明:inta[][4]={0,0};則下面不正確的敘述是。

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

B)二維數(shù)組a的第1維大小為1

C)因?yàn)槎S數(shù)組0中第二維大小的值除以初值個(gè)數(shù)的商為1,故數(shù)組a行數(shù)為1

D)只有元素a[0][0]和a[0]⑴可得初值0,其余元素均得不到初值0"

答案:D

149.以下能對(duì)二維數(shù)組a進(jìn)行正確初始化的語(yǔ)句是。

A)inta[2][]={{l,0,l},{5,2,3});

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

C)inta⑵[4]={{1,2,3},{4,5},{6}};

D)inta[][]={{l,0,1},{},{1,1});"

答案:B

150.若有說(shuō)明:inta[3北4];則對(duì)a數(shù)組元素的非法引用是

A)a[0][2*l]

B)all][3]

C)a[4-2][0]

D)a[0][4]"

答案:D

151.以下對(duì)二維數(shù)組a的正確說(shuō)明是o

A)inta[3J[J;

B)floata(3,4);

C)doublea[l][4];

D)floata(3)(4);"

答案:c

152.以下對(duì)1維整型數(shù)組a的正確說(shuō)明是o

A)floata(lO);

B)intn=10,a[n];

C)intn;inta[n];

D)#defineSIZE10;inta[SIZE];H

答案:D

153.下面程序的運(yùn)行結(jié)果是:

main()

{inti;

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

elsecontinue;

printf(,n,#'n,);}

printf('M,$',M);)

A)*#*#$

B)*#*#*#$

C)*#*#$

D)#*#*$"

答案:B

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

main()

{inta,b;

for(a=l,b=l;a<=100;a++)

{if(b>=20)break;

if(b%3==1){b+=3;continue;}

b-=5;}

printf(u,,%d\n1,M,

A);)

A)7

B)8

C)9

D)10n

答案:B

155.若運(yùn)行以下程序時(shí),從鍵盤輸入3.6,2.4<CR>?cR>表示回車),則下面程序的運(yùn)行結(jié)果

是:

#include<stdio.h>#include<math.h>

main()

{floatx,y,z;

scanf('H'%f,%f,n,&x,&y);

z=x/y;

while(l)

{if(fabs(z)>1.0){x=y;y=z;z=x/y;)

elsebreak;}

printf「%f1y);}

A)1.5

B)1.6

C)2.0

D)2.4”

答案:B

156.假定x和y為double型,則表達(dá)式x=2,y=x+3/2的值是

A)3.500000

B)3

Q2.000000

D)3.000000"

答案:D

157.下面程序的運(yùn)行結(jié)果是:

main()

{inti,b,k=O;

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

{b=i%2;

while(b—>=0)k++;}

printf(u,,%d,%d,H,,k,

B);)

A)3,-l

B)8,-l

C)3,0

D)8,-2"

答案:D

158.若二維數(shù)組a有m列,則在前的元素個(gè)數(shù)為.

A)j*m+j

B)i*m+j

C)i*m+j

D)i*m+j+l”

答案:B

159.以下各組選項(xiàng)中,均能正確定義二維實(shí)型數(shù)組a的選項(xiàng)是

A)floata[3][4];

B)floata(3,4);

floata[][4];floata[3][4];

floata[3][]={{1},{0}};floata[][]={{0},{0});

C)floata[3][4];

D)floata[3][4];

staticfloata[][4]={{0},{0}};floata[3][];

autofloata[][4]={{0},{0},{0}};floata[][4]"

答案:C

160.下面程序段的運(yùn)行結(jié)果是:

for(y=l;y<10;)y=((x=3*y,x+l),x-l);

printf('M,x=%d,y=%dun,x,y);

A)x=27,y=27

B)x=12,y=13

C)x=15,y=14

D)x=y=27n

答案:C

161.以下for循環(huán)的執(zhí)行次數(shù)是:

for(x=0,y=0;(y=123)&&(x<4);x++);

A)是無(wú)限循環(huán)

B)循環(huán)次數(shù)不定

C)執(zhí)行4次

D)執(zhí)行3次”

答案:C

162.若i為整型變量,則以下循環(huán)執(zhí)行次數(shù)是:

for(i=2;i==0;)printf(,",%d'M,,i-);

A)無(wú)限次

B)0次

C)1次

D)2次”

答案:B

163.對(duì)for(表達(dá)式1;;表達(dá)式3)可理解為:

A)for(表達(dá)式1;0;表達(dá)式3)

B)for(表達(dá)式1;1;表達(dá)式3)

C)for(表達(dá)式1;表達(dá)式1;表達(dá)式3)

D)for(表達(dá)式1;表達(dá)式3;表達(dá)式3)”

答案:B

164.下面有關(guān)for循環(huán)的正確描述是:

A)for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況

B)for循環(huán)是先執(zhí)行循環(huán)體語(yǔ)句,后判斷表達(dá)式

C)在for循環(huán)中,不能用break語(yǔ)句跳出循環(huán)體

D)for循環(huán)的循環(huán)體語(yǔ)句中,可以包含多條語(yǔ)句,但必須用花括號(hào)括起來(lái)”

答案:D

165.下面程序的運(yùn)行結(jié)果是:

main()

{inta=l,b=10;

do

{b-=a;a++;}while(b—<0);

printf(,M,a=%d,b=%d\nun,a,

B);)

A)a=3,b=ll

B)a=2,b=8

C)a=l,b=-1

D)a=4,b=9"

答案:B

166.若運(yùn)行以下程序時(shí),從鍵盤輸入ADescriptor〈CR>(CR)表示回車),則下面程序的運(yùn)行結(jié)

果是:

main()

{chare;

intv0=0,vl=0,v2=0;

do{

switch(c=getchar())

{case'":case'A':

case'e^case'E*:

case,i':case,r:

case'o':caseO:

case'u'rcase'U'ivl+=1;

default:vO+=1;v2+=1;}

}while(c!='\n');

printf(u"vO=%d,vl=%d,v2=%d\nM,',vO,vl,v2);}

A)v0=7,vl=4,v2=7

B)v0=8,vl=4,v2=8

C)vO=ll,vl=4,v2=U

D)v0=12,vl=4,v2=12"

答案:D

167.下面程序是從鍵盤輸入學(xué)號(hào),然后輸出學(xué)號(hào)中百位數(shù)字是3的學(xué)號(hào),輸入0時(shí)結(jié)束循

環(huán)。請(qǐng)選擇填空。

main()

{longintnum;

scanf(n"%ld,,n,&num);

do{if([1])printf(1,n%ldu,,,num);

scanf(““%ld””,&num);

}while(!num==O);}

[1]

A)num>300

B)num/100%10==3

C)!num==3

D)!num!=3"

答案:B

168.以下程序段

x=-l;

do

{x=x*x;}while(!x);

A)是死循環(huán)

B)循環(huán)執(zhí)行二次

C)循環(huán)執(zhí)行1次

D)有語(yǔ)法錯(cuò)誤"

答案:C

169.與下面程序段等價(jià)的是:

for(n=100;n<=200;n++)

{if(n%3==0)continue;

printf('M'%4d',H,n);}

A)for(n=100;(n%3)&&n<=200;n4-+)printf(n,,%4d,u,,n);

B)for(n=100;(n%3)||n<=200;n++)printf(,H'%4dM,,,n);

C)for(n=100;n<=200;n++)if(n%3!=0)printf(

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論