C程序設(shè)計(jì)試題及題解2_第1頁
C程序設(shè)計(jì)試題及題解2_第2頁
C程序設(shè)計(jì)試題及題解2_第3頁
C程序設(shè)計(jì)試題及題解2_第4頁
C程序設(shè)計(jì)試題及題解2_第5頁
已閱讀5頁,還剩61頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

00000000000000000

C程序設(shè)計(jì)試題及題解

2

目錄

..............................................................

i.CWJ?.......................................................................................

2............................................

3.選擇結(jié)構(gòu)程序設(shè)計(jì).......................................................

4.彳腌卜..............................................................

5.雕..............................

6......................................

7.瞰...................................................................

8.?!>...............................................................

9.指卜..................................................................

10.緒WW....................................................

11..................................................................

12.妍...................................................................

二.I?蹴...................................................................

1.Wf制為5^^...........................................

2.1W1...................................................................

3.計(jì)算大于10的最小n個(gè)能被3整圈]整場(chǎng)山............................

4.輸階整姣鏈僦掰...............................

5.輸出201~300^Wf像...................................

6.統(tǒng)計(jì)輸入字符串中大寫類英文字母的個(gè)數(shù)....................................

7.輸入M個(gè)血硼............................

8.輸崎脛.............................................................

9.■gig?穆............................................................

10、將‘0~8'的數(shù)字字符變成比它大1的數(shù)字字符將‘9'變?yōu)?0'.......

11、連接字符串................................................................

12、取出ASCH怖.................................

13.求超面外...........................................................

14.Ml懶...........................................................

15.求一堆零件的總數(shù)(100至200之間.......................................

16.交哪舞處.........................................................

17.計(jì)算1至100翔JEI^UWl>....................................

18.稠給定制僦陞...................................

三.填空題....................................................................

1.計(jì)算給定的公式........................................

2.iWJ舉..............................................................

3.從io微............................................

4.iW....................................

5.輸入若干個(gè)整數(shù),統(tǒng)計(jì)其中大于0和小于0的徽...........................

6.?J;耨...........................................................

7、單徽涉麴馳....................................................

8、大寫變小寫,小寫變大寫..................................................

3

9、譜[均值?..............................................................

104?名碎,....................................................

11、幽雇.............................................................

12、崛............................................

13、代像躺教勺帝..........................................

14、蝴然.............................................................

15、朋的公哂酬..............................................

16.輸入一個(gè)4X4階矩陣,并計(jì)算第1列整口.............................

17.^................................................................................................................

18.翔電超國(guó)酈!?................................................

19、猴Je...............................................................................................................................

20.i<50公雌......................................................

21.5j?..........................................................................................................

22.計(jì)算前m彳觸種...................................................

23.^..................................................................................................................................

24.麟學(xué)冊(cè)班..........................................

25.輸入一個(gè)3行3列的整型數(shù)組,求其最大值和最小值.......................

26、悌弼泄值?...........................................

27、輸出Fibonacci數(shù)列的前15項(xiàng)>...........................................

四?編題.................................................................

l.^?-,挹...............................................

2.WlaOSe.......................................................................................

3.颯..................................................................

4.求硼?..........................................................

5.粗浮糠倒蝴軸.................................

6.求已知函數(shù)f()罐....................................................

7.四嚼..............................................................

8.慚、..........................................

9.打印出Fibonacci,數(shù)列的前20微......................................

10.計(jì)算fun()l^?..............................................................................................................

11.W?........................................................................................................

12、函數(shù)funl()施.......................................................

13.............................................................................

14.按要求處理一個(gè)4階解.............................................

15.求已知lf(x)灌姍".....................................................

16.將以指針數(shù)組形式存放的n悖符#蟒...........................

17.弼野的班帆..................................................

18....................................................................................................

4

一、選擇題

(1)C語言概述

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

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

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

2、下面關(guān)于C語言用戶標(biāo)識(shí)符的描述,正確的是(D)

A、不能區(qū)分大小寫B(tài)、用戶標(biāo)識(shí)符不能描述常量

C、類型名也是用戶標(biāo)識(shí)D、用戶標(biāo)識(shí)符可以作為變量名

3.關(guān)于C語言的敘述中,不正確的是(D)

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

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

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

D.注釋說明只能位于一條語句的后面

括(A)4.若有說明語句:charC='\95';則變量C包含(D)個(gè)字符

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

5.結(jié)構(gòu)化程序設(shè)計(jì)不包

A.最優(yōu)化B自頂而下,逐步細(xì)化C模擬化設(shè)計(jì)D結(jié)構(gòu)化編碼

6.結(jié)構(gòu)化程序設(shè)計(jì)的三種基本語句是(C)

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)

7.關(guān)于C語言數(shù)據(jù)類型的

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

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

8.關(guān)于C語言的源程序的敘述中,錯(cuò)誤的是(C)

A.C語言的源程序由函數(shù)構(gòu)成B.main函數(shù)可以書寫在自定義函數(shù)之后

C.必須包含有輸入語句D.一行可以書寫多個(gè)語句

9.下面敘述中,(A)不是結(jié)構(gòu)化程序設(shè)計(jì)中的三種基本結(jié)構(gòu)之一

A.數(shù)據(jù)結(jié)構(gòu).B.選擇結(jié)構(gòu)C.循環(huán)結(jié)構(gòu)D.順序結(jié)構(gòu)

10.char型變量存放的是(A)

A.ASCH碼值B.字符本身.C十進(jìn)制代碼值.D十六進(jìn)制代碼值

11.已有如下定義和輸入語句

inta;charcl,c2;

scanf(u%d,%c,%c",&a,&cl,&c2);

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

A.10ABB.10,A,BC.10ABD.10AB

12.以下敘述不正確的是(D)

A、C程序的執(zhí)行總是從main函數(shù)開始

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

5

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

D、在編譯C程序源程序時(shí),可發(fā)現(xiàn)注釋中的拼寫

13.已知如下定義和輸入語句:

inta,b:

scanf(4,%d,%d",&a,&b);

若要求a、b的值分別為10和20,正確的數(shù)據(jù)輸入是(B)

A、1020B、10,20C、a=10,b=20D、10;20

14、在C語言源程序中,以下敘述正確的是(C)

A、main函數(shù)必須位于文件的開頭

B、每行只能寫一條語句

C、程序中的每一語句可以寫成幾行

D、每個(gè)語句的最后必須有點(diǎn)號(hào)

15.對(duì)于C語言源程序,以下敘述錯(cuò)誤的是(C)

A.可以有空語句

B.函數(shù)之間是平等的,在一個(gè)函數(shù)內(nèi)部不能定義其它函數(shù)

C.程序調(diào)試時(shí)如果沒有提示錯(cuò)誤,就能得到正確結(jié)果

D.注釋可以出現(xiàn)在在語句的前面

16.下面敘述中,(A)不是結(jié)構(gòu)化程序設(shè)計(jì)三種基本結(jié)構(gòu)的共同特點(diǎn)

A.先判斷后執(zhí)行B.單入口,單出口,

C.程序中沒有執(zhí)行不到的語句D.無死循環(huán)

17.若有定義:intx=1234,y=123,z=12;則語句printf("Md+%3d+%2d",x,y,z);運(yùn)行后的

輸出結(jié)果為(D)

A.123412312B.12341234123412341231231231212

C.1234+1234+1234I).1234+123+12

(2)數(shù)據(jù)類型,運(yùn)算符和表達(dá)式

1、若定義:intx=2;y=3;floati;則以下符合C語言語法的表達(dá)式是(B)

A、x=x*3=2B、x=(y==1)C、i=float(x)D、i%(-3)

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

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

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

A、3.75B、3.5C、3D、4

4.若有定義:inta=l,b=2,c=3;語句++a||++b&&++a運(yùn)行后b的值為(D)

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

5.設(shè)單精度型變量+,g的值均為2.0,使+為4.0的表達(dá)式為(A)

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

9.對(duì)于整型變量x,下述計(jì)語句(B)與賦值句:x=x%2==0?1:0;不等價(jià)

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

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

12.下面語句正確的是(BC)

Aint*P;*P=20;Bchar*s="abcdef”;printf(“%s\n”,s);

Ccharstr[]=

“abcdf";......................................................................

6

........000000000000......................................................printf

(%s",str);

Dcharstr□二{'a','b','c'};printf("%s”,str);

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

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

14.若有定義:intm=5.n=3則表達(dá)式(m+1,n+1,(--m)+(n--))的值是(B)

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

15.對(duì)于基類型相同的兩個(gè)指針變量之間,不能進(jìn)行的運(yùn)算是(C)

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

16.若有定義:inta;則語句a=(3*4)+2%3;運(yùn)行后a的值為(B)

A.12B.14C.11D.17

17.下面敘述中,錯(cuò)誤的是(A)

A.其算術(shù)運(yùn)算對(duì)象不包含函數(shù)B.%(模擬運(yùn)算符)的運(yùn)算對(duì)象只能為整型量

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

18.已知inta='R';則正確的表達(dá)式是(A)

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

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

A.a+=a-=(a=4)*(a=3)Ba=a*3=2Ca%3Da二double(-3)

20.以下的計(jì)語句中,x的值一定被重新賦值的是(B)

A.if(x==y)x+=y;Bif(x>y&&x!=y);x+=y;

C.if(x!=y)scanf("%d",&x)elsescanf(u%d,,,&y);D.if(x<y){x++;y++}

21.設(shè)有double型變量a,b,c,e均有值,對(duì)代數(shù)式(3ae)/(be),不正確的語言表達(dá)式

是(C)

A.a/b/c*e*3B.3*a*e/b/cC.3*a*e/b*cD.a*e/c/b*3

22.以下運(yùn)算符中優(yōu)先級(jí)最高的是(D)

A.>B.||C.&&D,+

23.若有自定義:inta,b;doublex.,則以下不符合C語言的表達(dá)是(A)

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

24.若有定義:inta[3][3];則表達(dá)式&a[2]的值為(B)

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

25.以下(D)是正確的變量名

A.a.beeB.-PHC.intD.P_ll

26.若有定義:inta=l,b=2,c=3,d=4,x=5,y=6則表達(dá)式(x=a>b)&&(y=c>b)

的值為(A)

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

27.以下(D)是正確變量名

A.5fB.ifC.f.5D._f5

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

A.'x'&&'y'B.x<=yC.x||y=z&&y-zD.!((x<y)&&!z|I1)

29.若有定義:intx,a;則語句x=(a=3,a+1);運(yùn)行后x、a的值依次為(C)

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

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

7

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

31.若有定義:inta=2,b=3;floatx=3.5,y=2.5;則表達(dá)式(float)(a+b)/2+(int)x%(int)y

的值是(A)

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

32.以下(B)是錯(cuò)誤的整型常量

A、-OxcdfB、018C、OxeD、Oil

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

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

34.設(shè)整形變量a為5,使b不為2的表達(dá)式是(C)

A、b=(++a)/3B、b=6-(一a)C、b=a%2D、b=a/2

35、已知chara='R,;則不正確的賦值表達(dá)式是(D);

A、a=(a++)%4B、a+2=3C、ca+=256—D、a='\078'

36.下面敘述正確的是(B)

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

C、++5與6等價(jià)D、,A'與“A”等價(jià)

37、getchar()函數(shù)的功能是從終端輸入(D)

A、一個(gè)整型量值B、一個(gè)實(shí)型變量值C、多個(gè)字符D、一個(gè)字符

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

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

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

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

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

則不能滿足要求的表達(dá)式是(C)

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

41.下面敘述正確的是(A)

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

B.若a和b是整型變量,(a+b)++是合法的

C."A"*'B'是合法的

D."A"+"B"是合法的

42.以下程序段運(yùn)行后變量a的值為(D)

intx=6,y=5;

inta;

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

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

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

inta=5b=6;printf("%d”,a/b);

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

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

voidmain()

(

inta=65;

charc='A';

printf("%x,%d",a,c);

8

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

(3)選擇結(jié)構(gòu)程序設(shè)計(jì)

LC語言對(duì)于計(jì)嵌套語句的規(guī)定:else總是與(B)配對(duì)

A.第一個(gè)ifB.之前最近且尚未配對(duì)

C.縮進(jìn)位置相同的ifD.之前最近的if

2.以下的語句中,無內(nèi)嵌的if語句是(D)

A.if(x==y)x+=y;B.if(x>y&&x!=y)x+=y;

C.if(x!=y)scanfx);elsescanf&y);

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

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

voidmain()

{intn=5;

if(n++=6)

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

else

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

)

As4B、5C、6D、7

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

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

int*p,*q;

inti,x;

p=a;q=b;

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

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

x=*(p+i)*2;

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

5.若有定義:int"l,b=2,c=3;則執(zhí)行以下程序后a,b,c的值分別為(D)

if(a<b){c=a,a=b,b=c;}

A.a=lb=2,c—3B.a=2b—3c=lC.a.—2b—3c=3D.a=lb=l,c=l

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

voidmain()

{intn=<e,;

switch(n---)

{default:printf("error”);

case'a':

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

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

cased:printf(“warn");

)

A、errorB、goodC、errorgoodD^warn

(4)循環(huán)控制

9

L對(duì)于整型變量x,與while(!x)等價(jià)的是(B)

A.while(x!=0)B.while(x==0)C.while(x!=1)D.while(?x)

2.以下程序運(yùn)行后,循環(huán)體運(yùn)行的次數(shù)為(B)

inti=10,x;

for(;i<10;i++)

x=x+i;

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

3.設(shè)有整型變量x,下述語句(B)不會(huì)出現(xiàn)死循環(huán)

A、for(;;x+=l);B、for(;(x=getchar())!='\n';);

C、while(1){x++;}D、for(x=10;;x一一);

4、在C語言中while循環(huán)和do—while循環(huán)的主要區(qū)別是(B)

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)體內(nèi)可以使用continue語句,while循環(huán)體內(nèi)不能使用continue語

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

5、對(duì)于整型變量x和y,語句for(x=0,y=0;(y!=123)&&(x<4);x++)y++;中的“y++;”

被執(zhí)行(A)

A、4次B、0次C、123次D、3次

6.以下程序段運(yùn)行后變量n的值為(D)

inti=l,n=l;

for(;i<3;i++)

(

continue;

n=n+i;

)

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

7.設(shè)有如下程序段:

inta[3][3]={1,0,2,1,0,2,1,0,1),i,j,s=0;

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

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

s=s+a[i][j];

則執(zhí)行該程序段后,s的值是(C)

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

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

voidmain()

(

intsum=O,item=0;

while(item<5)

(

item++;

sum+=item;

if(sum>=6)break;

10

}

printf(a%d\nw,sum);

)

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

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

inti=0,a[]={1,2,3,4,5};

do{

a[i]+=10;

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

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

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

A.112345B.12345C.1112131415D.1112345

10.若有定義:inti=0,x=0;inta[3][3]={1,2,3,4,5,6,7,8,9)則以下程序段運(yùn)行后x的值

為(C)

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

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

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

voidmain()

(

intsum=0,item=0;

while(item<5)

item++;

sum十二item;

if(sum==5)

break;

}

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

)

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

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

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

do(

a[i]++;

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

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

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

A.45654B.34543C.45554D.45543

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

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

do{

a[i]+=2;

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

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

11

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

A.9795105B.9593103C.957383D.757383

(5)數(shù)組

1、有如下定義inta[][3]=[1,2,3,4,5,6,7,8,};則數(shù)組a的行數(shù)(B)

A、2B、3C、4D、無法確定

2.以下數(shù)組定義中,正確的是(B)

A.inta[2][3>{1,2,3,4,5,6,7};

B.inta[]口={{1,2,3},{4,5,6},{7,8,9}};

C.inta[2]口={1,2,3,4,5,6);

D.inta[][4]={6};

3.若有定義:inta=6,b=2;chlarCl='a',C2='b';則表達(dá)式a+b%5+C2-Cl的值是(C)

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

4.若有定義:charstr[6]="abcdm",*ps,*str2="abcdef";正確的是(B)

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

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

5.以下能對(duì)一維數(shù)組a進(jìn)行正確初始化的語句是(D)

A.inta[5]=(0,0,0,0,0,)B.inta[5]=[0]

C.inta[5]={l,2,3,4,5,6,7}D.inta[]={0}

6.以下(A)是不正確的字符串常量

A.'abc'B,"12'12"C,“0”D“”

7.設(shè)有如下定義:charstr[8]={"Fujian”};則分配給數(shù)組str的存儲(chǔ)空間是(C)字節(jié)

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

8.下列數(shù)組定義中,正確的是(A)

A.inta[10]B.intn=10a[n];C.intN=10;inta[N];

D.intn;scant("%d",&n);inta[n]

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

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

10.若有inta=2則a=strcmp("miss","miss")運(yùn)行后a的值為(B)

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

11.以下程序結(jié)束后屏幕輸出(B)

charstr[]="ab\\cd";printf("%d”,strlen(str));

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

12.己知inta[10];則對(duì)a數(shù)組元素引用不正確的是(A)

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

13.設(shè)有以下變量定義:

charstrl[]=wstring”,str2[8],*str3,*str4="string";

則(A)是正確的

A.strcpy(strl,nchina");B.str2="china";

C.strcpy(*str3,"china");D.strcpy(str4[0],**china");

14、以下能對(duì)一維數(shù)組a進(jìn)行正確初始化的語句是(D)

A、inta[5]=(0,0,0,0,0);B、inta[s]=[0];

C、inta[5]={l,2,3,4,5,6,7};D>inta[]={0};

15.若有定義inta[][3]={1,2,3,4,5,6,7,8,9};則表達(dá)式sizeof(a)/sizeof(a[0])

12

的值為(A)

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

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

A.inta[5]={0};B、inta[]={012};C>inta[5]=0D、inta[]

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

A、inta[2][3]={1,2,3,4,5,6,7};

B、inta[][]={{!,2,3},{4,5,6},{7,8,9}};

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

D、inta[][4]={6}

18.若有定義:inta[3][4]={{l,2},{0},{1,2,3}};則@[1][1]的值為(A)

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

19.若有定義:inta[3]={0,l義};則all]的值為(B)

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

20.若有定義:inta[5]={l,2,3,4,5};則語句a[l]=a有定義2+21a[3T];運(yùn)行后a[l]的值

為(A)

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

21.有如下定義:charstr[6]={'a','b',則語句printf("%s",str);

的輸出結(jié)果是(D)

A.ab\B.abdefC.ab\0D.ab

22.定義chara[]="abcdef";charb[]="xyz";以下程序運(yùn)行后輸出(B)

strcpy(a,b);

printf("枇",a[2]);

A.cB.zC.\0D.d

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

charstr[80];

strcpy(str,"hello");

printf("%d”,strlen(str));

A、5B、6C、7I)、80

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

chara[]="abc\0misM;

printf(,srelen(a));

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

(6)函數(shù)

1.關(guān)于C語言函數(shù)的描述中,正確的是(B)

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

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

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

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

2.己知chara;使用scanf()函數(shù)輸入一個(gè)字符給變量a,不正確的函數(shù)調(diào)用是(B)

A.scanf&a);B.scanf&a);

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

3.putchar()函數(shù)的功能是向終端輸出(B)

A.多個(gè)字符B.一個(gè)字符C.一個(gè)實(shí)型變量值D.一個(gè)整型變量表達(dá)式

13

4、已知inta;使用scanf()函數(shù)輸入一個(gè)整數(shù)給變量a,正確的函數(shù)調(diào)用是(B)

A、scanf("%d”,a);B、scanf(“%d”,&a);

C、scanf("A”,&a);D、scanf("%df",&a);

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

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

6.如下fun函數(shù)的類型是(C)

fun(floatx)

(

doubley;

intz;

y=x*x;

z=(int)y;

return(z);

)

A.voidB.doubleC.intD.float

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

intfun(char*str)

(

char*p;p=str;

if(p!='\0')

p++;

return(p-str);

)

則以下語句執(zhí)行后的輸出結(jié)果是(A)

printf("%d\n",fun("student"));

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

8.以下程序的屏幕輸出為(B)

#include<stdio.h>

voidf(inti)

(

inta=2;

a=i++;

printfa);

)

main()

(

inta=l,c=3;

f(c);

a=c++;

printfa);

)

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

9.若有以下函數(shù)定義:

intfun()

14

staticintk=0;

return++k;

)

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

inti;

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

fun();

printf(a%dw,fun());

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

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

intfun(intarray[4][4])

(

intj;

for(j=0;j<4;j++)

printf(<<%2d,r,array[2][j]);

printf("\n”);

)

main()

(

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.0450

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

#include(stdio.h)

inta=2,b=3;

intmax(inta,intb)

(

intc;

c=a>b?a:b;

return(c);

)

main()

(

inta=4;

printfmax(d,b));

)

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

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

#include<stdio.h>

intf(intx,inty)

return(x+y);

15

}

main()

(

inta=2,b=3,c;

c=f(a,b);

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

}

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

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

#include<stdio.h>

intglobal=100;

fun()

(

intglobal=5;

return++global;

}

voidmain()

(

printf("%d\n”,fun())

}

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

(7)預(yù)處理命令

1.若有定義:*definePI3,則表達(dá)式PI*2*2的值為(A)

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

2.設(shè)有如下定義typedefint"INTEGER;INTEGERP,*q;則(C)是正確的表述

A.P是int型變量B.q是基類型為int的指針變量

C.P是基類型為int的指針變量D.程序中可用INTEGER代替int類型名。

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

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

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

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

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

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

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

B、宏名無類型

C、宏名必須用大寫字母表示

D、預(yù)處理命令行都必須以#號(hào)開始

5.以下敘述中,正確的是(B)

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

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

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

D.在程序的一行上可以書寫幾個(gè)有效的宏定義

6.下面程序的輸出結(jié)果是(C)

16

#include(stdio.h)

SdefineONE1

#defineTWOONE+1

itdefineTHREETWO+1

voidmain()

(

printf(“%d\n”,TIIREE-ONE);

)

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

7.以下程序執(zhí)行時(shí),輸入12345〈回車)輸出為(A)

#include<stdio.h>

#defineN5

voidmain()

{

inta[N];

int*p=a;

while(p<a+N)

scanf(a%d",p++);

while(p>a)

prinf(a%s",*(--p));

)

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

8.若有以下定義

#defineMOD(x,y)x%y

則執(zhí)行以下程序段后,z的值是(D)

intz,a=15,b=100;

z=M0D(b,a);

A.100,B.15C.11D.10

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

#include<stdio.h>

#defineSQR(x)(x*x)

voidmainO

(

inta,b=3;

a=SQR(b+2);

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

)

A.11B.25C.不定值D.產(chǎn)生錯(cuò)誤

(8)指針

L若函數(shù)fun的函數(shù)頭為:intfun(inti,intj)且函數(shù)指針變量P定義如下:int(*P)

(inti,intj);則要使指針P指向函數(shù)fun的賦值語句是(B)

A.P=*funB.P=fun;C.P=fun(i,j)D.P=&fun

2.設(shè)有以下語句,則(D)是對(duì)。數(shù)組元素的不正確引用,其中

17

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

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

溫馨提示

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