C語言程序設(shè)計期末模擬考試388題(含答案)_第1頁
C語言程序設(shè)計期末模擬考試388題(含答案)_第2頁
C語言程序設(shè)計期末模擬考試388題(含答案)_第3頁
C語言程序設(shè)計期末模擬考試388題(含答案)_第4頁
C語言程序設(shè)計期末模擬考試388題(含答案)_第5頁
已閱讀5頁,還剩97頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

2020年C語言程序設(shè)計期末考試題庫388題

一、選擇題

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

A)補碼

B)反碼

C)原碼

D)ASCII碼”

答案:D

2.對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

3.閱讀下程序,若運行結(jié)果為如下形式,輸入輸出語句的正確內(nèi)容是:

main()

{intx;floaty;printf(',Henterx,y:nn)

(輸入語句)(輸出語句)}

輸入形式enterx,y:23.4

輸出形式x+y=5.40

A)scanf(,','%d,%fH,,&x,&y);printf(,,"\nx+y=%4.2f,,\x+y);

B)scanf(,H,%d%fn,,&x,&y);printf('n,\nx+y=%4.2fH,,x+y);

C)scanf(''''%d%f,n,&x,&y);printf(nn\nx+y=%6.1f,",x+y);

口由成'”%(1%3?1『”幽,&丫)而皿"”\1^+尸%4.25+丫);”

答案:B

4.根據(jù)定義和數(shù)據(jù)的輸入方式,輸入語句的正確形式為:

已有定義

數(shù)據(jù)的輸入方式:4.52<CR>3.5

A)scanf(,H,%f,%fM,,&f1,&f2);

B)scanf(n"%f%fM',&f1,&f2);

C)scanf(,M'%3.2f%2.1frn,&f1,&D;

D)scanf(,H,%3.2f%2.1,&f2);n

答案:B

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

數(shù)據(jù)時,正確的數(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>n

答案:D

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

12345678(回車),則y的值:

A)無定值

B)45.0000

0678.000000

0)123.00000"

答案:B

7.若x,y均定義為int型,z定義為double型,以下不合法的scanf函數(shù)調(diào)用語句是:

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

B)scanf(""%2d*%d%lf'",&x,&y,&z);

C)scanf(""%x%*d%o"",&x,&y);

D)scanf(""%x%o%6.2f",,&x,&y,&z);"

答案:D

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

小于5,則輸出按方式。

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

B)按原字符長從左向右全部輸出

C)右對齊輸出該字串,左補空格

D)輸出錯誤信息”

答案:C

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

大于5,則輸出按方式

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

B)按原字符長從左向右全部輸出

C)右對齊輸出該字串,左補空格

D)輸出錯誤信息”

答案:B

10.若w=l,x=2,y=3,z=4,則條件表達(dá)式w<x?w:y<z?y:z的值是:

A)4

B)3

C)2

D)lu

答案:D

11.有輸入語句: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

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

A)int

B)float

C)double

D)不確定”

答案:C

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

A)ch='123';

B)ch=f\xff;

C)ch='\08‘;

D)ch='nVn;M

答案:B

14.下面四個選項中,均是非法常量的選項是。

A)'as'

B)'\V

C)-0xl8

D)0xabc

-0fff\0r01177''0'

,\0xa'12,4560xf,,,a

答案:A

15.sizeof(float)是:

A)1個雙精度型表達(dá)式

B)1個整型表達(dá)式

C)1種函數(shù)調(diào)用

D)1個不合法的表達(dá)式“

答案:B

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

A)2.500000

B)2.750000

03.500000

D)0.000000"

答案:A

17.若有說明語句:charc=、072'則變量c

A)包含1個字符

B)包含2個字符

C)包含3個字符

D)說明不合法,c的值不確定”

答案:A

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

A)縮排位置相同的if

B)其之前最近的if

C)之后最近的if

D洞-行上的if

答案:B

19.以下符合C語言語法的賦值表達(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

20.以下正確的敘述是:

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

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

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

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

答案:D

21.以下不正確的敘述是

A)在C程序中,逗號運算符的優(yōu)先級最低

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

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

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

值?!?/p>

答案:D

22.已知各變量的類型說明如下:

inti=8,k,a,b;

unsignedlongw=5;

doublex=l.42,y=5.2;

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

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

B)a=a*3=2

C)x%(-3)

D)y=float(l)n

答案:A

23.已知各變量的類型說明如下:

intk,a,b;

unsignedlongw=5;

doublex=1.42;

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

A)x%(-3)

B)w+=-2

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

B)

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

答案:A

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

A)0~255

B)0-32767

00-65535

D)0?2147483647”

答案:C

25.以下不正確的語句為:

A)if(x>y);

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

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

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

答案:B

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

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

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

A)357

B)369

C)159

D)147n

答案:A

27.下面程序的運行結(jié)果是:

main()

{inta=l,b=10;

do

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

printf('M,a=%d,b=%d\n'M,,a,

B);)

A)a=3,b=l1

B)a=2,b=8

C)a=l,b=-1

D)a=4,b=9"

答案:B

28.下面程序的運行結(jié)果是:

main()

{inty=10;

do{y—;}while(—y);

printf(u,,%d\n,H,,y-);}

A)-l

B)1

C)8

D)0u

答案:D

29.下面程序的功能是把316表示為兩個加數(shù)的和,使兩個加數(shù)分別能被13和11整除。請

選擇填空。

main()

{inti=O,j,k;

do{i++;k=316-13*i;}while([1]);j=k/ll;

printf(""316=13*%d+ll*%d"",ij);)

A)k/ll

B)k%ll

C)k/ll==O

D)k/ll==O"

答案:B

30.下面程序的運行結(jié)果是。

main()

{intnum=0;

while(num<=2)

{num++;

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

A)1

B)1

C)1

D)1

222

33

4”

答案:B

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

main()

{inta,max=0;

scanf('H'%dn,',&

A)

while((1])

{if(max<amax=a;

scanf(,H'%dn",&

A);)

printfCM,%du';max);}

[1]

A)a==o

B)a

C)!a==l

D)!an

答案:B

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

成B.請選擇填空。

main()

{chare;

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

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

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

[2];}

printf('M,%c,'M,

C)}

[2]

A)c=B

B)c='A'

C)c-=26

D)c=c+26”

答案:C

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

的較大者,請選擇填空:

#indudeH,,stdio.h,H,

main()

{intm=O,n=O;

chare;

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

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

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

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

[1]

A)c=gets()

B)getchar()

C)c=getchar()

D)scanf(M,,%c,"',

C)M

答案:C

34.執(zhí)行以下程序段后的輸出結(jié)果是

intw=3,z=7,x=10;

printf(u,,%d\n'M,,x>10?x+100:x-10);

printf(',n%d\n"H,w++||z++);

printf(u,,%d\n,,n,!w>z);

printf(,H,%d\n,,n,w&&z);

A)0000

B)0110

C)0101

D)1010u

答案:c

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

main()

{charchi,ch2,ch3;(輸入語句)

printf(u"%c%c%c,H,,chI,ch2,ch3);}

輸入形式:ABC

輸出形式:AB

A)scanf(,,,,%c%c%c,"\&chl,&ch2,&ch3);

B)scanf(H,,%c,%c,%c'M,,&ch1,&ch2,&ch3);

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

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

答案:A

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

A)(exp==O)

B)(exp!=O)

C)(exp==l)

D)(exp!=l)n

答案:B

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

A),\n

B/MOir

C)'\01「

D),\abc'

,wvxmor

答案:B

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

main()

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

if(x<y)

if(y<O)z=O;

elsez+=1;

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

)

A)3

B)2

C)1

D)O”

答案:B

39.當(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

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

main()

(intm=5;

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

elseprintf(n,,%d\n"M,m-);}

A)4

B)5

C)6

D)7"

答案:C

41.以下if語句語法正確的是。

A)if(x>O)printf(n"%fH',x)

elseprintf(u,,%f'n,-x);

B)if(x>O){x=x+y;printf('M,%f",,x);}

elseprintf(un%fH',-x);

C)if(x>0){x=x+y;prinrf(,,H%fn',x);};

elseprintf('H,%fH,,-x);

D)if(x>O){x=x+y;printf(,",%fH,,x)}

elseprintf('n,%f,,,,-x);u

答案:B

42.若希望當(dāng)A的值為奇數(shù)時,表達(dá)式的值為”“真A的值為偶數(shù)表達(dá)式的值為“”假則

以下不能滿足要求的表達(dá)式是:

A)A%2==1

B)!(A%2==0)

C)!(A%2)

D)A%2"

答案:C

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

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

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

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

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

答案:C

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

A)只能是0或1

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

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

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

答案:D

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

A)x=10

B)x=10

C)x=10

D)x=10

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

z=1Oz=1Oz=15z=10"

答案:A

46.設(shè)x,y均為float型變量,則以下不合法的賦值語句是

A)++x;

B)y=(x%2)/10;

C)x*=y+8;

D)x=y=0;"

答案:B

47.若有以下定義,則正確的賦值語句是:

inta,b=5;floatx;

A)a=l,b=2,

B)b++;

C)a=b=5

D)b=int(x);u

答案:B

48.執(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=10n

答案:B

49.下列程序的運行結(jié)果是

A)63

B)36

C)編譯出錯

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

50.已知字符0的ASCH碼為十六進(jìn)制的30,下面程序的輸出是

A)6

B)9

C)0

D)3

main()

{union{unsignedcharc;

unsignedinti[4];

}z;

z.i[0]=0x39;

z.i[l]=0x36;

printf("n%c\n"n,z.

C);}”

答案:B

51.下面是對s的初始化,其中不正確的是.

A)chars[5]={,,nabc,n,}

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

C)chars[5]=”

D)chars[5]=,n,abcdef",;n

答案:D

52.下面程序的運行結(jié)果是.

main()

{inta[6],i;

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

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

printf(un%2dnn,a[i]);}}

A)-40404

B)-40403

C)-40443

D)-40440"

答案:C

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

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

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

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

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

答案:C

54.下面程序的輸出是

A)0

B)I

C)3

D)6

main()

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

2,7};

printf(,,,,%d\n',,,,cnum[O].y/cnum[O].x*cnum[l].x);}“

答案:D

55.下面程序的輸出是

A)32

B)16

C)8

D)24

typedefunion{longx[2];

inty[4];

charz[8];

JMYTYPE;

MYTYPEthem;

main()

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

答案:C

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

main()

{intx,y,z

scanf(M,,%d%d%d'H,,&x,&y,&z);

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

A)x+y+z=48

B)x+y+z=35

C)x+z=35

D)不確定值”

答案:D

57.下面程序的輸出結(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,M,,++p->x);

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

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

)

A)10

B)50

C)51

D)60

20606070

202121311

答案:C

58.下列分支語句合法的是()。

(

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"

答案:C

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

A)'abc'

答案:A

60.請讀程序:

intx,y;

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

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

printf(',,,%3d,,H,x*y);

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

)

A、1234

0000

B、0135

0012

C、1234

36912

D、152

8

0101"

答案:c

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

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

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

A)3

B)4

C)5

D)有語法錯"

答案:D

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

A誹法

B)a[4]的地址

05

D)3

main()

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

printf(',',%d,,,,,5ie-p);

}”

答案:C

63.下列程序的輸出結(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[0].a+s[l].b;

printf(H,,%d\n,M,,t);

)"

答案:B

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

A)4

B)6

C)8

D)10

intb=2;

intfunc(int*

A)

{b+=*a;retum(

B);)

main()

{inta=2,res=2;

res+=func(&

A);

printf(',H%d\n',H,res);

}”

答案:B

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

A)44

B)22

C)24

D)46

main()

{inta[5]={2,4,6,8,10},*p,**k;

p=a;k=&p;

printf(““%d"”,*(p++));printf(""%d\n"”,**k);}

ii

答案:C

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

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

C)(x>=y>=z)

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

答案:A

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

(

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

(

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

(

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

(

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

答案:C

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

intf(char*s)

{char*p=s;

while(*p!='\O')p++;

return(p-s);}

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

A)3

B)6

C)8

D)0

printf(nn%d\n',H,f(H,,goodbey!,M,));

n

答案:C

69.下列程序段不是死循環(huán)的是

A)inti=100;

while(l)

{i=i%100+1;

if(i>100)break;}

B)for(;;);

C)intk=0;

do{++k;}while(k>=0);

D)ints=36;

while(s);—s;H

答案:C

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

int(*ptr)*();

則以下敘述中正確的是

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

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

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

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

答案:C

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

(A)0

(B)-l

(C)EOF

(D)非零值"

答案:D

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

A)6

B)8

C)10

D)12

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

main()

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

B));}”

答案:B

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

int(*p)[3]

A)定義不合法

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

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

D)是一個指向整型變量的指針”

答案:C

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

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

A)無限次

B)0次

C)1次

D)2次,,

答案:B

75.下面四個選項中,均是合法轉(zhuǎn)義字符的選項是

A)'\"

B)'\'

C)'\018'

D)'\\0'

,\\"\oi7"\f,ior

'\n"\"皿xab"xlf"

答案:A

76.下面四個選項中,均是合法浮點數(shù)的選項是

A)+le+l

B)-.6O

C)123e

D)-e3

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

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

答案:B

77.下面四個選項中,均是不合法的浮點數(shù)的選項是

A)160.

B)123

C)-.18

D)-e3

0.122e4.2123e4.234

e3.e50.01e3M

答案:B

78.下面四個選項中,均是不合法的整型常量的選項是:

A)-Ofl

B)-OXcdf

0-018

D)-0x48eg

-0xfffroi7999-068

001112,4565e203r

答案:D

79.下面四個選項中,均是合法整型常量的選項是:

A)I6O

B)-0xcdf

C)-01

D)-0x48a

-0xffff01a986,0122e5

0110xe06680x"

答案:A

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

A)必須為字母

B)必須為下劃線

C)必須為字母或下劃線

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

答案:C

81.下面四個選項中,均是不合法的用戶標(biāo)識符的選項是。

A)A

B)float

C)b-a

D)-123

P_01a0gototemp

do_AinlINT"

答案:C

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

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

A)4

B)16

C)32

D)52”

答案:C

83.C語言規(guī)定:在一個源程序中,main函數(shù)的位置。

A)必須在最開始

B)必須在系統(tǒng)調(diào)用的庫函數(shù)的后面

C)可以任意

D)必須在最后”

答案:C

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

A)4

B)5

C)6

D)0

unionmyun

{struct

{intx,y,z;}u;

intk;

)a;

main()

{a.u.x=4;a.u.y=5;a.u.z=6;

a.k=O;

printf("n%d\n"",a.u.x);

答案:D

85.以下敘述正確的是:

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

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

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

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

答案:C

86.有如下定義

structperson{charname[9];intage;};

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

,,nPaurn',19

,H,Adam,H,,16};

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

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

B)pfintf(n"%c\n,,n,class[3J.namel1]);

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

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

答案:D

87.在scanf()中,表示本輸入項在讀入后不賦給相應(yīng)變量的格式說明字符是

A)L

B)h

C)C

D)*“

答案:D

88.在C語言中,如果下面的變量都是int類型,則輸出的結(jié)果是()o

sum=5,p=5;p=sum++,p++,++p;

printf(,,n%d\n,,H,p);

A、7B>6

C、5D、4”

答案:A

89.下面程序段是輸出兩個字符串中對應(yīng)字符相等的字符。請選擇填空。

charx[]=H,'programming"";

chary[]=""Fortran

inti=0;

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

{if(x[i]==y[i])printfC"%cM,;);

elsei++;)}

A)x[i++]

B)y[++i]

C)x[i]

D)y[i]M

答案:A

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

main()

{intn,sum=0,n=2345;

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

n=[2];

}while(n);

printf(u,,sum=%d,,n,sum);}[2]

A)n/1000

B)n/100

C)n/10

D)n%10"

答案:C

91.以下程序的

輸出結(jié)果是

A)Zhang

B)Zhao

C)Wang

D)18

#include,,,,stdio.h,'H

structstu

{intnum;

charname[10];

intage;

);

voidfun(structstu*p)

{printf(M,'%s\nn,,,(*p).name);)

main()

(

structstustudents[3]={{9801,nnZhang'H',20},

{9802,,,HWang,M,,19),

{9803,"nZhao'H',18});

fun(students+2);

)

ii

答案:B

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

A)(x>=1)&&(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<=10)&&(x>=200)||(x<=210)"

答案:C

93.下列運算符中優(yōu)先級最高的是o

A)<

B)+

C)&&

D)!="

答案:B

94.有語句charstrl[10],str2[10]={""china""};則能將字符串china賦給數(shù)組strl的正確語句

是O

A、strl={""china""};

B)strcpy(strl,str2);

C)strl=str2;

D)strcpy(str2,strl);^'

答案:B

95.以下程序運行后,輸出結(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,5,7,9,11),*p;

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

fut(&p,

A);

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

}”

答案:C

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

A)016

B)0abc

C)010

D)0al2

0x8f017-0xll7ff

0180x80x16-123"

答案:D

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

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

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

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

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

答案:D

98.#include<stdio.h>

main()

{inta,b,c,d;

scanf(,H,%d%dH,,,&a,&

B);

c=gbs(a,

B);

d=gys(a,

B);

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

D);

)

gbs(a,

B)

inta,b;

{intc;

a=a>0?a:-a;

b=b>0?b:-b;

c=a*b;

if(c==0)return(0);

while(a!=

B)if(a>

B)a-=b;

elseb-=a;

return(c/

A);

)

gys(a,

B)

inta,b;

{if(a*b==0)return(0);

a=a>0?a:-a;

b=b>0?b:-b;

while(a!=

B)if(a>

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

retum(

A);

)

請寫出上面程序的運行結(jié)果:

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

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

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

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

答案:c

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

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

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

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

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

答案:D

100.若已定義:inta[9],*p=a;并在以后的語句中未改變p的值,不能表示a[l]地址的表達(dá)式

A)p+1

B)a+1

C)a++

D)++p"

答案:C

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

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

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

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

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

答案:C

102.若程序中有下面的說明和定義,

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

structabc

{intx;chary;}

structabcsl,s2;

A)編譯進(jìn)錯

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

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

D)能順利通過編譯'但連接出錯”

答案:A

103.設(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

104.若@=5,()=3,14,邏輯表達(dá)式!3+

B)&&!c的值為(

A)0(

B)-l

(

C)l(

D)2"

答案:A

105.利用數(shù)組寫出一個與int*p[4]等價的說明

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

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

答案:B

106.判斷字符串si是否大于字符串s2應(yīng)當(dāng)使用.

A)if(sl>s2)

B)if(strcmp(sl,s2))

C)if(strcmp(s2,sl)>0)

D)if(strcmp(sl,s2)>0)n

答案:D

107.假定下列程序的可執(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(,,n%c,H,,*argv[i]);

}”

答案:B

108.有下面的程序段

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

printf(""%s"",

A);

則.

A)運行后將輸出Chm

B)運行后將輸出Ch

C)運行后將輸出Chi

D)編譯出錯"

答案:D

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

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

D)printf(Hn%c\nnn,class[2].name[0]);

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

C)printf('H,%c\nM,,,class[2].name[l]);

structperson{charname[9];intage;};

structpersonclass[10]={n"John'M,,17,

”“Mary"”,18,

HnAdam,,",16};n

答案:D

110.若有如下定義和語句,

則輸出結(jié)果是:

A)10,20

B)10,10

C)20,10

D)20,20

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

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

n

答案:D

111.C語言聯(lián)合類型在任何給定時刻。

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

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

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

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

答案:B

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

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

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

答案:D

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

A)l,1,I

B)l,0,0

C)l,1,0

D)l,0,1

main()

{intx,y,z;

x=y=z=0;

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

printR"%d,%d,%d\n'',x,y,z);

)

11

答案:B

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

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

i=5;

i=++i*4+2;

n

答案:D

115.下面程序的運行結(jié)果是o

#include<stdio.h>

#include<string.h>

main()

{chara[80]=H,,AB,,,,,b[80]=,,,,LMNP,,,,;inti=0;

strcat(a,

B);

while(a[i++]!=,\0,)b[i]=a[i];

puts(

B);)

A)LB

B)ABLMNP

C)AB

D)LBLMNP”

答案:D

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

果是

main()

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

inti=O;

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

while(s[i]!=,\O')

(if(s[i]==

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

elseif(s[i]==c-32)s[i]=s[i]+32;

i++;}

puts(s);)

A)ahAMa

B)AhAMa

C)AhAMaahA

D)ahAMaahAu

答案:A

117.為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)以上說法都不對"

答案:B

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

A)charb[10]={};

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

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

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

答案:B

119.當(dāng)c的值不為0時,在下列選項中能正確將c的值賦給變量a、b的是

A)c=b=a;

B)(a=

C)II(b=

C);

C)(a=

C)&&(b=

C);

C)a=c=b;H

答案:C

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

A)ABC

B)ABC9

0123456ABC

D)ABC456789

#include<stdio.h>

#include<string.h>

main()

{charss[10]=,M,12345'H,;

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

If

答案:A

121.下面程序的功能是將字符串5中所有的字符c刪除。請選擇填空。

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

122.若有以下說明:

inta[10]={1,2,3,45,6,7,8,9,10),*p=a;

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

A)*p+6

B)*(p+6)

C)*p+=5

D)p+5"

答案:C

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

A)fprintf函數(shù)

B)fread函數(shù)

C)fwrite函數(shù)

D)fputc函數(shù)"

答案:A

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

時;FILE1CHINABEIJINGSHANGHA1

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

A、XHINVWIJINFAHANJHAIB,FILE1CHINABEIJING

C、CBSD、FCB

main(intarge,char*argv[|)

(charch[7]={""65ab21"");

inli,s=O;

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

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

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

答案:A

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

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

A)fopen(""A:\user\abc.txt"",""r"")

B)fopen(""A:\\user\\abc.txt"",""r+"")

C)fopen(""A:\user\abc.txt"",""rb"")

C)fopen(""A:\\user\\abc.txt"",""w"")"

答案:B

126.若fp是指向某文件的指針,且已讀到文件末尾,則庫函數(shù)feof(fp)的返回值是一

A)EOF

B)-l

C)非零值

D)NULL"

答案:C

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

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

A)ABCDEFG

B)IJHL

OABCDEFGHIJKL

D)IJKLABCDEFGH

main(intargc,char*argv[]))

{while(—argc>O)printf(,,H%s,H,,argv[argc]);

printf('M,\nnn);

)"

答案:D

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

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

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、返回文件長度值”

答案:C

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

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

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

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

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

答案:B

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

main()

(

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

intk;

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

{switch(

C)

{case'I':++k;break;

case'L'xontinue;

default:putchar(

C);continue;

)

putcharC*1);}}

A)SSW*

B)SW*

C)SW*A

D)SWM

答案:B

132.判斷字符串a(chǎn)和b是否相等,應(yīng)當(dāng)使用.

A)if(a==

B)

B)if(a=

B)

C)if(strcpy(a,

B))

D)if(!strcmp(a,

B))"

答案:D

133.若指針p已正確定義,要使p指向兩個連續(xù)的整型動態(tài)存儲單元,不正確的語句是

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));"

答案:A

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

A)inta[]=""string"";

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

C)chars=""string"";

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

答案:D

135.若有以下說明和定義,

在必要的賦值之后,對fun函數(shù)的正確調(diào)用語句是

fun(int*

O{}

main()

{int(*

A)()=fun,*b(),w[10],c;

A)a=a(w);

B)(*

A)(&

C);

C)b=*b(w);

D)fun(

B);"

答案:B

136.若有以下定義和語句:

intw[2][3],(*pw)[3];

pw=w;

則對w數(shù)組元素非法引用是

A)*(w[0]+2)

B)*(pw+1)[2]

C)pwlOJ[O]

D)*(pw[l]+2)"

答案:B

137.若有以下定義和語句:

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

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

A)*p

B)a[10J

C)*a

D)a[p-a]"

答案:B

138.若有以下的說明和語句,則在執(zhí)行for語句后,*(*(pt+l)+2)表示的數(shù)組元素是

A)t[2]lOJ

B)t[2][2]

C)t[l][2]

D)t[2][l]

intt(3][3],*pt[3],k;

for(k=0;k<3;k++)pt[k]=&t[k][0]

答案:C

139.若有以下的說明,則對初值中字符宜的引用方式為一。

staticstruct

charch;

doublex;

chara[];

}c0[2]={{{'"35,““bc””},{E45”"de“"}Tm',8.6,”“abc””}}};

A^c.ch

B、c[0][0].ch

C、c[l][l].ch

D、alO]n

答案:B

140.若有以下的定義:

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

141.若有說明:long*p,a;則不能通過scanf語句正確給輸入項讀入數(shù)據(jù)的程序段是

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

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

C)scanf(""%ld"",p=&

A);

D)scanf(""%ld"",&

A);"

答案:A

142.若有說明:inti,j=7,*p=&i;,則與i=j;等價的語句是

A)i=*p;

B)*p=*&j;

C)i=&j;

D)i=**p;“

答案:B

143.以下正確的定義語句是.

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

B)floatx[3][]={{l},{2},{3});

C)longb[2][3]={{I},{1,2},{1,2,3));

D)doubley[][3]={0};"

答案:D

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

A)scanf(MM%d%d%d,H,,&a,&b,

D);

B)scanf("”%d%d%d"”,&a,&b,&

D);

C)scanf(UH%d%d%d,n,,a,b,

D);

D)scanf(""%d%d%d"”,a,b,*

D);“

答案:A

145.設(shè)已有定義:char*st=""howareyou"”;下列程序段中正確的是

A)chara[11],*p;strcpy(p=a+l,&st[4]);

B)chara[11];strcpy(++a,st);

C)chara[ll];strcpy(a,st);

D)chara[],*p;strcpy(p=&a[1],st+2);n

答案:A

146.下面程序的運行結(jié)果是:

main()

{inta,b;

for(a=1,b=1;a<=l00;a++)

{if(b>=20)break;

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

b-=5;}

printf(',n%d\n,,H,

A);)

A)7

B)8

C)9

D)10u

答案:B

147.下面程序(每行程序前面的數(shù)字表示行號)

lmain()

2(

3inta[3]={0};

4inti;

5for(i=0;i<3;i++)scanf(,,,,%d,M,,&a[i]);

6for(i=l;i<4;i++)a[0]=a[0]+a[i];

7printf('M,%d\n',",a[0]);

8)

A)沒有錯誤

B)第3行有錯誤

C)第5行有錯誤

D)第6行有錯誤”

答案:D

148.下面程序有錯的行是

lmain()

2{

3inta[3]={l};

4inti;

5scanf(,M'%d"",&

A);

6for(i=1;i<3;i++)a[O]=a[O]+a[i];

7printf(n,,a[0]=%d\nn",a[0]);

8)

A)3

B)6

C)7

D)5U

答案:D

149.下面程序(每行程序前面的數(shù)字表示行號)。

1main()

2{

3floata[10]={0,0};

4inti;

5for(i=0;i<10;i++)scanf('H,%d,H,,a[l]);

6for(i=0;i<10;i++)a[0]=a[0]+a[i];

7printf(n-,%d\nn,,,a[0]);

8)

A)沒有錯誤

B)第3行有錯誤

C)第5行有錯誤

D)第7行有錯誤”

答案:C

150.若有說明:inta口[4]={0,0};則下面不正確的敘述是。

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

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

C)因為二維數(shù)組0中第二維大小的值除以初值個數(shù)的商為1,故數(shù)組a行數(shù)為1

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

答案:D

151.若有說明:inta[3][4]={0};則下面正確的敘述是

A)只有元素a[0][0]可得到初值0

B)此說明語句不正確:。

C)數(shù)組a中各元素都可得到初值,但其值不-定為0。

D)數(shù)組a中每個元素均可得到初值0"

答案:D

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

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

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

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

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

答案:B

153.以下對二維數(shù)組a的正確說明是。

A)inta[3][];

B)floata(3,4);

C)doublea[l][4];

D)floata(3)(4);"

答案:C

154.若有說明:inta[10];則對a數(shù)組元素的正確引用是。

A)a[10]

B)a[3.5]

C)a[5]

D)a[10*10]"

答案:C

155.以下對1維整型數(shù)組a的正確說明是o

A)floata(10);

B)intn=10,a[n];

C)intn;inta[n];

D)#defineSIZE10;inta[SIZE];H

答案:D

156.當(dāng)執(zhí)行以下程序段時

A循環(huán)體將執(zhí)行一次B循環(huán)體將執(zhí)行兩次

C循環(huán)體將執(zhí)行無限次D系統(tǒng)將提示有語法錯誤

x=-l;

do{x=x*x;)while(!x);n

答案:A

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

main()

{inti;

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

{if(i%2)printf(""*"");

elsecontinue;

printf(""#"");}

printf(""$"");)

A)*#*#$

B)*#*#*#$

C)*#*#$

D)#*#*$"

答案:B

158.下面程序的運行結(jié)果是.

main()

{inta[6][6],i,j;

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

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

a[i][j]=(i/j)*(j/i);

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

{for(j=l;j<6;j++)

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

printf(""\n"");}}

A)lllll

B)00001

C)10000

D)10001

11111000100100001010

11111001000010000100

11111010000001001010

11111100000000110001"

答案:c

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

是:

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

main()

{floatx,y,z;

scanfr"%f,%F”,&x,&y);

z=x/y;

while(l)

{if(fabs(z)>l.0){x=y;y=z;z=x/y;)

elsebreak;}

printfCH,%f,n,y);)

A)1.5

B)1.6

C)2.0

D)2.4H

答案:B

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

main()

{intk=0;

charc='A,;

do

{switch(c++)

{case*A1:k++;break;

case'B^k-;

case'C,:k+=2;break;

case'D,:k=k%2;continue;

case'E':k=k*10;break;

default:k=k/3;)

k++;

}while(c<'G);

printf(""k=%d,M,,k);}

A)k=3

B)k=4

C)k=2

D)k=0"

答案:B

161.下面程序段:

for(t=1;t<=100;t++)

{scanf(u,'%d,H,,&x);

if(x<0)continue;

printf(,M,%3d',n,t);}

A)當(dāng)x<0時整個循環(huán)結(jié)束

B)x>=0時什么也不輸出

Oprintf函數(shù)永遠(yuǎn)也不執(zhí)行

D)最多允許輸出100個非負(fù)整數(shù)”

答案:D

162.下面程序的運行結(jié)果是:

main()

{inti,b,k=0;

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

{b=i%2;

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

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

B);)

A)3,-l

B)8,-l

C)3,0

D)8,-2"

答案:D

163.下面程序段的功能是計算1000!的末尾含有多少個零。請選擇填空。(提示:只要算出

1000!中含有因數(shù)5的個數(shù)即可

for(k=0,i=5;m<=1000;m+=5)

while([1]){k++;m=m/5;}

[1]

A)m%5==0

B)m=m%5==0

C)m%5==0

D)m%5!=0”

答案:C

164.下面程序的運行結(jié)果是:

main()

{inti;

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

switch(i%5)

{case。:printf(break;

easel:printf(',n#"n);break;

default:printf(,,,,\n,,H);

case2:printf(,H'&',u);

})

A)#&

B)#&

C)#

D)#&

&&

&&*”

答案:B

165.下面程序的功能是計算1至10之間的奇數(shù)之和及偶數(shù)之和。請選擇填空;

main()

{inta,b,c,i;

a=c=0;

for(i=0;i<=10;i+=2)

{a+=i;

[1];

c+=b;}

printf("”偶數(shù)之和二%小仍,

A);

printf("”奇數(shù)之和二%d\n"”,c-11);}

[1]

A)b=i—

B)b=i+1

C)b=i++

D)b=i-1”

答案:B

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

main()

{inti,sum=0;

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

if([l])sum+=i;

printf(,,M%dun,sum);}

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

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

C)i%7=0

D)i%7==0M

答案:D

167.下面程序段的運行結(jié)果是

for(x=3;x<6;x++)printf((x%2)?(HH**%d,',,):(',"##%d\n'M,),x);

A)**3##4

B)##3##4

C)##3**4

D)**3**4**5**5**5##5”

答案:A

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

for(x=0

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論