2020年C程序設(shè)計考試題庫_第1頁
2020年C程序設(shè)計考試題庫_第2頁
2020年C程序設(shè)計考試題庫_第3頁
2020年C程序設(shè)計考試題庫_第4頁
2020年C程序設(shè)計考試題庫_第5頁
已閱讀5頁,還剩166頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

2020年C程序設(shè)計考試題庫

【單選題】

1、在C++中,源程序變?yōu)榭蓤?zhí)行程序的正確順序應該是()。

A.編輯、鏈接、編譯、執(zhí)行B.編輯、編譯、鏈接、執(zhí)行

C.編譯、編輯、鏈接、執(zhí)行

D.編譯、鏈接、編輯、執(zhí)行

答案:B

分值:2

難度:1

知識點:1

2、要把高級語言編寫的源程序轉(zhuǎn)換為目標程序,需要使用()?

A.編輯程序

B.驅(qū)動程序

C.調(diào)試程序

D.編譯程序

答案:D

分值:2

難度:1

知識點:

3、下列關(guān)于C++與C語言的關(guān)系描述中,錯誤的是()。

A.C語言是C++語言的一個子集

B.C++與C語言是兼容的

C.C++對C語言進行了一些改進

D.C++和C語言都是面向?qū)ο蟮?/p>

答案:D

4、下面為使用面向?qū)ο笳Z言的正確理由是()。

A.面向?qū)ο蟪绦蛴扇N基本結(jié)構(gòu)組成,分別是順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)

B.程序語句比面向過程語言簡單

C.面向?qū)ο蟪绦蛟O(shè)計可以設(shè)計為自行修改錯誤

D.面向?qū)ο蟪绦蚝苋菀赘拍罨?/p>

答案:D

分值:2

難度:1

知識點:

5、以下選項中,合法的用戶標識符是()。

A.long

B._2Test

C.3Dmax

D.A.dat

答案:B

分值:2

難度:1

知識點:

6、下列描述中正確的是()。

A.不是每個C++程序都必須包含預處理命令#include

B.C++程序必須有relum語句

C.C++程序中的變量必須定義在主程序內(nèi)部

D.C++程序中所使用的符號常量可以不進行定義

答案:A

分值:2

難度:1

知識點:

7、C++源程序文件的擴展名為()。

A..CPP

B..C

C..DLL

D..EXE

答案:A

分值:2

難度:1

知識點:

8、cout是10流庫預定義的()。

A.類

B.對象

C.包含文件

D,常量

答案:B

分值:2

難度:1

知識點:

9、C++對C語言作了很多改進,即從面向過程變成為面向?qū)ο蟮闹饕蚴牵ǎ?/p>

A.增加了一些新的運算符

B.允許函數(shù)重載,并允許設(shè)置缺省參數(shù)

C.規(guī)定函數(shù)說明符必須用原型

D,引進了類和對象的概念

答案:D

分值:2

難度:1

知識點:

10、下列選項中,()是不合法的標識符.

A.Program

B.Obj23

C.double

D.B_C_D

答案:c

分值:2

難度:1

知識點:

11、下列標識符中,不合法的用戶標識符為()。

A.a~!

B._int

C.a_10

D.PAd

答案:A

分值:2

難度:1

知識點:

12、只能向終端輸出一個字符的函數(shù)是()。

A.pringf函數(shù)

B.putchar函數(shù)

C.getchar函數(shù)

D.scanf函數(shù)

答案:B

分值:2

難度:1

知識點:

13、如果有整型量intx=5,執(zhí)行情況x+=1.9后x的值為()。

A.6

B.7

C.結(jié)果不確定

D.表達式非法

答案:A

分值:2

難度:1

知識點:

14、己知a=5,b=3,表達式a+=a*=++b*3的值為()。

A.40

B.80

C.100

D.120

答案:D

分值:2

難度:1

知識點:

15、下列語句彼此等價的是()。

A.!(a<10)&&!(a>0)和!((a<10)&&(a>0))

B.!(a==b)和(a>b)&&(a<b)

C.!((a>10)||(a<0))和(a<=10)&&(a>=0)

D.!(a>b)和avb

答案:C

16、定義如下變量:inti=2;intj=3;則i/j的結(jié)果為()。

A.0.66667

B.O

C.0.7

D.0.6666666666...

答案:B

分值:2

難度:1

知識點:

17、下面表達式的值為false的是()。

A.1<3&&5<7

B.!(2>4)

C.!(5<8)||(2<8)

D.3&&0&&1

答案:D

分值:2

難度:1

知識點:

18、設(shè)inta=3,b=4,c=5;表達式(a+b)>c&&b==c的值是()。

A.2

B.-1

C.0

D.1

答案:C

分值:2

難度:1

知識點:

19、下列符號中,不是分隔符的是()。

A.;

B.()

C.//

D.{)

答案:C

分值:2

難度:1

知識點:

20、在C++語言中,自定義的標識符()。

A.能使用關(guān)鍵字并且不區(qū)分大小寫

B,不能使用關(guān)鍵字并且不區(qū)分大小寫

C.能使用關(guān)鍵字并且區(qū)分大小寫

D.不能使用關(guān)鍵字并且區(qū)分大小寫

答案:D

分值:2

難度:1

知識點:

21、字符串常量"ME"的字符個數(shù)是()。

A.4

B.3

C.2

D.1

答案:B

分值:2

難度:1

知識點:

22、C++語言可執(zhí)行程序從()開始執(zhí)行。

A.程序中第一條可執(zhí)行語句

B.x=0,y=0,z=0

C.程序中的main函數(shù)

D.包含文件中的第一個函數(shù)

答案:C

分值:2

難度:1

知識點:

23、下列符號中,不是分隔符的是()。

A.;

B.[]

C.()

D.{)

答案:B

分值:2

難度:1

知識點:

24.在C++語言中,自定義的標識符()。

A.能使用關(guān)鍵字及標準標識符

B.不能使用關(guān)鍵字并且不區(qū)分大小寫

C.能使用關(guān)鍵字并且區(qū)分大小寫

D,不能使用關(guān)鍵字并且區(qū)分大小寫

答案:D

分值:2

難度:1

知識點:

25、在C++語言里,一條語句以()字符作為結(jié)束符。

A.,

B.;

C..

D.無符號

答案:B

分值:2

難度:1

知識點:

26、設(shè)以下變量都是int類型,則值不等于7的表達式是()。

A.x=y=6,x+y,x+l

B.x=y=6,x+y,y+l

C.x=6,x+1,y=6,x+y

D.y=6,y+1,x=y,x+1

答案:c

分值:2

難度:1

知識點:

27、x=l,y=l,z=l,執(zhí)行表達式w=++x||++y&&++z后,x、y、z的值分別為()。

A.x=2,y=l,z=l

B.x=2,y=2,z=2

C.x=l,y=l,z=l

D.x=2,y=2,z=l

答案:A

分值:2

難度:1

知識點:

28、用邏輯表達式表示“大于10而小于20的數(shù)”,正確的是()。

A.10<x<20

B.x>10||x<20

C.x>10&x<20

D.!(x<=10||x>=20)

答案:D

分值:2

難度:1

知識點:

29、設(shè)inta=10,b=11,c=12;表達式(a+b)<c&&b==c的值是()。

A.2

B.O

C.-2

D.1

答案:B

分值:2

難度:1

知識點:

30、整型變量i定義后賦初值inti=2.8*6的結(jié)果是()。

A.12

B.16

C.17

D.18

答案:B

分值:2

難度:1

知識點:

31、在C語言中合法的字符型常量是()。

A.'\t'

B."A"

C.65

D.a

答案:A

分值:2

難度:1

知識點:

32、C++語言程序的基本單位是()。

A.程序行

B.語句

C.函數(shù)

D.字符

答案:B

33、下列C++運算符中,優(yōu)先級最高的是()。

A.+(雙目)

B.*(單目)

C.<=

D.*=

答案:B

分值:2

難度:1

知識點:

34、在32位計算機中,一個ini型數(shù)據(jù)所占用的內(nèi)存長度為多少字節(jié)()。

A.2

B.4

C.6

D.8

答案:B

分值:2

難度:1

知識點:

35.若變量a是int型,并執(zhí)行了語句:a='A'+1.6;,則正確的敘述是()。

A.a的值為字符C

B.a的值為浮點型

C.不允許字符型和浮點型數(shù)據(jù)相加

D.a的值為字符‘A'的ASCH值加1

答案:D

分值:2

難度:1

知識點:

36、下列十六進制整型常量的寫法中,正確的是()。

A.Oxaf

B.2f0x

C.021b

D.OxAE

答案:D

分值:2

難度:1

知識點:

37、C++對C語言作了很多改進,即從面向過程變成為面向?qū)ο蟮闹饕倪M是()

A.增加了一些新的運算符

B.允許函數(shù)重載,并允許設(shè)置缺省參數(shù)

C.規(guī)定函數(shù)說明符必須用原型

D.引進了類和對象的概念

答案:D

分值:2

難度:1

知識點:

38、下列符號屬于C++語言用戶標識符的是()。

A.DO

B.if

C.void

D.switch

答案:A

分值:2

難度:1

知識點:

39、任意一個類,析構(gòu)函數(shù)的個數(shù)最多是()?

A.不限個數(shù)

B.1

C.2

D.3

答案:B

分值:2

難度:1

知識點:

40'()函數(shù)是Windows應用程序開始執(zhí)行時的入口點。

A.WinMain()

B.Win()

C.Main()

D.Windows()

答案:A

分值:2

難度:1

知識點:

41、下列數(shù)據(jù)中不合法的C++實數(shù)是()。

A.3e-5

B..6

C.5.

D.6

答案:D

分值:2

難度:1

知識點:

42、下列數(shù)據(jù)中合法的C++字符常量是()。

A.'as'

B."a"

C.”23,

DJ\\'

答案:D

分值:2

難度:1

知識點:

43、表達式33/5的結(jié)果為()。

A.6

B.6.6

C.7

D.以上都不對

答案:A

分值:2

難度:1

知識點:

44、下列符號屬于C++語言用戶標識符的是()。

A.void

B.template

C.IF

D.switch

答案:C

分值:2

難度:1

知識點:

45、以下所列的C++語言常量中,錯誤的是()。

A.OxFF

B.1.2e0.5

C.2L

D.'\72r

答案:B

分值:2

難度:1

知識點:

46、若x=4,則x*=x+2的值為()。

A.36

B.24

C.18

D.20

答案:B

分值:2

難度:1

知識點:

47、以下運算符中,運算對象必須是整型的是()。

A./

B.%=

C.!=

D.〈=

答案:B

分值:2

難度:1

知識點:

48、能將數(shù)學表達式a<=c<=b表示為正確的C++表達式的是(

A.a<=c<=b

B.c<=a&&c>=b

C.c>=a&&c<=b

D.c>=a||c<=b

答案:c

分值:2

難度:1

知識點:

49、以下選項中,與k=n++完全等價的表達式是()。

A.k=n,n=n+l

B.n=n+l,k=n

C.k=++n

D.k+=n+l

答案:A

分值:2

難度:1

知識點:

【程序閱讀】

1、定義如下變量和數(shù)組:inti;intx[3][3]={1,2,34,5,6,7,8,9};

則語句for(i=0;i<3;i++)cout?x[i][l];的執(zhí)行結(jié)果是

答案:258

分值:4

難度:1

知識點:

2、以下程序的輸出結(jié)果是o

#include<iostream>

usingnamespacestd;

intmain()

inta=7,b=4,c=6,d;

cout?(d=a>b?(a>c?a:c):(b));

答案:7

分值:4

難度:1

知識點:

【程序改錯題】選做

【編程題】選做

【章節(jié)】第2章基本控制結(jié)構(gòu)程序設(shè)計

【知識點】

1、算法的相關(guān)概念

2、C++語句及應用

3、C++程序的閱讀與設(shè)計、調(diào)試

【單選題】

1、結(jié)構(gòu)化程序設(shè)計所規(guī)定的三種基本控制結(jié)構(gòu)是()。

A.順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)

B.輸入、輸出、處理

C.for、while、switch

D.主程序、子程序、函數(shù)

答案:A

分值:2

難度:1

知識點:

2、當執(zhí)行以下程序段時,循環(huán)體將執(zhí)行().

intmain()

inty=1;

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

)

A.一次

B.兩次

C.無限次

D.系統(tǒng)將提示有語法錯誤

答案:C

分值:2

難度:1

知識點:

3.while(!x)中的(!x)與下面()條件等價.

A.x==l

B.x!=l

C.x!=0

D.x==0

答案:D

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

#include<iostream>

usingnamespacestd;

intmain()

(

intx=4;

do{

cout?(x-=3)?endl;

}while(—x);

)

A.1

B,1和-3

C.2和0

D.死循環(huán)

答案:A

分值:2

難度:1

知識點:

5、下列語句段將輸出字符’*’的個數(shù)為().

inti=100;

while(l)

1一;

if(i==0)break;

cout?

)

A.98個

B.99個

C.100個

D.101個

答案:B

分值:2

難度:1

知識點:

6、t為int類型,進入循環(huán)while(t=l){...}之前,t的值為0。則以下敘述中,正確的是()。

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

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

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

D.以上說法都不對

答案:B

分值:2

難度:1

知識點:

7、為了避免在嵌套的條件語句if...else中產(chǎn)生歧義,C++規(guī)定的if...else語句的匹配原則是

()。

A.else子句與所排位置相同的if配對

B.else子句與其之前最近的if配對

C.else子句與其之后最近的if配對

D.else子句與同一行上的if配對

答案:B

分值:2

難度:1

知識點:

8、x=0;for(i=0;i<99;i++)if(i)x++;執(zhí)行完程序段后,x的值是().

A.0

B.30

C.98

D.90

答案:C

分值:2

難度:1

知識點:

9、下列程序的輸出結(jié)果是()。

#include<iostream>

usingnamespacestd;

voidmain()

{intx=l,a=0,b=0;

switch(x)

(

case0:b++;

case1:a++;

case2:a++;b++;

)

cout?"a="VVa?"b="vvb;

}

A.a=2b=l

B.a=lb=l

C.a=lb=0

D.a=2b=2

答案:A

分值:2

難度:1

知識點:

10、下列給字符數(shù)組進行初始化的語句中,()是正確的。

A.charsl[]="abcdn;

B.chars2[3]=,'xyzH;

C.chars3[][]={'a7x7y');

D.chars4⑵[3]={“xyz”,“mnp”!;

答案:A

分值:2

難度:1

知識點:

11、下列程序段中循環(huán)體執(zhí)行的次數(shù)為()。

intk=10;while(k==1)k=k-1;

A.循環(huán)體語句一次都不執(zhí)行

B.循環(huán)體語句執(zhí)行無數(shù)次

C.循環(huán)體語句執(zhí)行一次

D.循環(huán)體語句執(zhí)行9次

答案:A

分值:2

難度:1

知識點:

12、執(zhí)行以下程序段后,變量i的值為().

inti=2;

switch(i)

{case1:i+=10;

case2:i+=10;

case3:i++;break;

default:i++;break;}

A.24

B.14

C.12

D.13

答案:D

分值:2

難度:1

知識點:

13、C++語言中規(guī)定,if語句的嵌套結(jié)構(gòu)中,else總是與()配對。

A.與最近的if配套

B.與第一個if配套

C.與縮進位置相同的if配套

D.與最近的且尚未配對的if配套

答案:D

分值:2

難度:1

知識點:

【程序閱讀題】

1、寫出以下程序的輸出結(jié)果

#include<iostream>

usingnamespacestd;

intmain()

(

inta=7,b=4,c=6,d;

cout?(d=a>b?(a>c?a:c):(b));

)

答案:7

分值:4

難度:1

知識點:

2、寫出以下程序的輸出結(jié)果

#include<iostream>

usingnamespacestd;

intmain()

(

inta=0,i;

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

(

switch(i)

(

case0:

case3:a+=2;

case1:

case2:a+=3;

default:a+=5;

)

)

cout?a?endl;

return0;

)

答案:31

分值:4

難度:2

知識點:

【編程題】選做

1、打印出所有的水仙花數(shù)。(所謂水仙花數(shù)是指一個三位數(shù),其各位數(shù)字立方和等于該數(shù)本

身)

答案:pa201.c

#include<iostream>

usingnamespacestd;

voidmain()

{intn,a,b,c;

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

{a=n%10;

b=n/10%10;

c=n/100;

if(a*a*a+b*b*b+c*c*c==n)

cout?n?,\t,;

)

)

結(jié)果:結(jié)果文件名??蛇x,程序輸入結(jié)果文件。沒有輸出文件則為【src】另起一行屏幕顯

不結(jié)果。

素材:

分值:10

難度:

知識點:

2、輸入100到200之間的所有素數(shù)。(所謂素數(shù)是指除了1和它本身外,不能被其他數(shù)所整

除的數(shù))

答案:pa202.c

#include<iostream>

usingnamespacestd;

voidmain()

{intm;

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

if(prime(m))

cout?m?,\t,;

)

intprime(intm)

{inti,k=l;

if(m<=l)k=0;

for(i=2;i<m;i++)

if(m%i==0)k=0;

returnk;

)

結(jié)果。

素材:

分值:10

難度:

知識點:

3、打印如下圖形:

*

***

*****

答案:pa203.c

#include<iostream>

usingnamespacestd;

intmain(){

inti,j;

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

{for(j=l;j<=4-i;j++)

coutw'

for(j=1,j<=2*i-l;j++)

cout?^*^;

cout?endl;}

return0;)

結(jié)果。

素材:

分值:10

難度:

知識點:

【章節(jié)】第3章函數(shù)

【知識點】

1、C++函數(shù)的相關(guān)知識

2、函數(shù)定義與函數(shù)的調(diào)用

3、內(nèi)聯(lián)函數(shù)與函數(shù)重載

【單選題】

1、在VisualBacic中,要使一個窗體不可見,但不從內(nèi)存中釋放,應使用的語句是()。

A.Show

B.Hide

C.Load

D.Unload

答案:B

難度:1

分值:2

知識點:1

1、若有以下函數(shù)調(diào)用語句,在此函數(shù)調(diào)用語句中實參的個數(shù)是()。

fun(a+b,(y=10,y),fun(n,k,d));

A.3

B.4

C.5

D.6

答案:A

分值:2

難度:1

知識點:

2、以下程序的運行結(jié)果是()。

intmain()

{intk=4,m=l,p;

p=func(k,m);

cout?p?endl;

p=func(k,m);

cout?p?endl;

)

func(inta,intb)

{staticintm,i=2;

i+=m+1;

m=i+a+b;

return(m);

)

A.8,17

B.8,16

C.8,20

D.8,8

答案:A

分值:2

難度:1

知識點:

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

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

A.3

B.4

C.5

D.有語法錯誤

[答案]A

4.分析如下程序:

#include<iostream>

intf(intb[],intn)

{inti,r=l;

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

r=r*b[i];

returnr;

)

voidmain(){

intx,a口={2,3,4,5,67,8,9};

x=f(a,3);

cout?x?endl;

)

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

A.720

B.120

C.24

D.6

答案:B

分值:2

難度:1

知識點:

5、下列函數(shù)參數(shù)默認值定義錯誤的是()。

A.Fun(intx,inty=0)

B.Fun(intx=100)

C.Fun(intx=0,inty)

D.Fun(inlx=f())(假定函數(shù)f()已經(jīng)定義)

答案:C

分值:2

難度:1

知識點:

6、在函數(shù)定義前加上關(guān)鍵字“inline”表示該函數(shù)被定義為()。

A.重載函數(shù)

B.內(nèi)聯(lián)函數(shù)

C.成員函數(shù)

D.普通函數(shù)

答案:B

分值:2

難度:1

知識點:

7、一個函數(shù)功能不太復雜,但要求被頻繁調(diào)用,選用()。

A.內(nèi)聯(lián)函數(shù)

B.重載函數(shù)

C.遞歸函數(shù)

D.嵌套函數(shù)

答案:A

分值:2

難度:1

知識點:

8、下面有關(guān)重載函數(shù)的說法中正確的是()。

A.重載函數(shù)必須具有不同的返回值類型

B,重載函數(shù)形參個數(shù)必須不同

C.重載函數(shù)必須有不同的形參列表

D,重載函數(shù)名可以不同

答案:C

分值:2

難度:1

知識點:

9、在C++語言中,對函數(shù)參數(shù)默認值描述正確的是()。

A.函數(shù)參數(shù)的默認值只能設(shè)定一個

B.一個函數(shù)的參數(shù)若有多個,則參數(shù)默認值的設(shè)定可以不連續(xù)

C.函數(shù)必須設(shè)定默認值

D.在設(shè)定參數(shù)的默認值后,該參數(shù)后面定義的所有參數(shù)都必須設(shè)定默認值

答案:D

分值:2

難度:1

知識點:

10、考慮函數(shù)原型voidtest(inta,intb=7,charz='*'),下面的函數(shù)調(diào)用中,屬于不合法調(diào)用的是

A.test(5);

B.test(5,8);

C.test(6,'#');

D.test(O,O;*');

答案:C

分值:2

難度:1

知識點:

11、以下對C++函數(shù)的有關(guān)描述中,正確的是()。

A.C調(diào)用函數(shù)時,只能把實參的值傳給形參,形參的值不能傳遞給實參

B.C++函數(shù)既可以嵌套定義又可以遞歸調(diào)用

C.函數(shù)必須有返回值,否則不能使用函數(shù)

D.C++程序中有調(diào)用關(guān)系的所有函數(shù)必須放在同一源程序文件中

答案:A

分值:2

難度:1

知識點:

12、在C++語言中函數(shù)返回值的類型是由()決定的。

A.調(diào)用該函數(shù)時系統(tǒng)臨時

B.return語句中的表達式類型

C.定義該函數(shù)時所指定的函數(shù)類型

D.調(diào)用該函數(shù)時的主調(diào)函數(shù)類型

答案:C

分值:2

難度:1

知識點:

13、以下程序的輸出結(jié)果是()。

intfunc(inta,intb)

{returna+b;}

intmain()

{intx=6,y=7,z=8,r;

r=func(func(x,y),z-);

cout?r?endl;

A.15

B.20

C.21

D.31

答案:c

分值:2

難度:1

知識點:

14、以下程序的輸出結(jié)果是()。

voidfun(inta,c)

{a=456;b=567;c=678;}

intmain()

{intx=10,y=20,z=30;

fun(x,y,z);

cout?z?,,,,,?y?,7,?x?endl;

)

A.30,20,10

B.10,20,30

C.456,567,678

D.678,567,456

答案:A

分值:2

難度:1

知識點:

15、C++語言中,形參與實參之間的數(shù)據(jù)傳遞方式是()。

A.只能按值傳遞

B.只能按地址傳遞

C.既可以按值傳遞也可以按地址傳遞

D.以上說法都不對

答案:C

分值:2

難度:1

知識點:

16、分析以下程序:

#include<iostream>

voidfun(inlnum){cout?num?endl;}

voidfun(charch){cout?(ch+1)?endl;}

intmain(){

fun('A*);

return0;

)

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

A.65

B.66

C.A

D.B

答案:B

分值:2

難度:1

知識點:

17、一個函數(shù)為voidf(intx,chary='a'),另一個函數(shù)為voidf(int),貝坨們()。

A.不能在同一程序塊中定義

B.可以在同一個程序塊中定義并可重載

C.可以在同一個程序塊中定義,但不可以重載

D,以上說法均不正確

答案:A

分值:2

難度:1

知識點:

18、函數(shù)定義為Fun(int&i),變量定義n=100,則下面調(diào)用正確的是()。

A.Fun(20)

B.Fun(20+n)

C.Fun(n)

D.Fun(&n)

答案:c

分值:2

難度:1

知識點:

19、當一個函數(shù)無返回值時,函數(shù)的類型應為()。

A.任意

B.void

C.int

D.char

答案:B

分值:2

難度:1

知識點:

20、下列帶缺省值參數(shù)的函數(shù)說明中,正確的說明是()。

A.intFun(intx,inty=2,intz=3);

B.intFun(intx=l,inty,intz=3);

C.intFun(intx,inty=2,intz);

D.intFun(intx=l,inty,intz=3);

答案:A

分值:2

難度:1

知識點:

21、下列函數(shù)參數(shù)默認值定義錯誤的是()。

A.Fun(intx,inty=0)

B.Fun(inlx=100)

C.Fun(intx=0,inty)

D.Fun(intx=f())(假定函數(shù)f()已經(jīng)定義)

答案:C

分值:2

難度:1

知識點:

22、在函數(shù)定義前加上關(guān)鍵字“inline”表示該函數(shù)被定義為()。

A.重載函數(shù)

B.內(nèi)聯(lián)函數(shù)

C.成員函數(shù)

D.普通函數(shù)

答案:B

分值:2

難度:1

知識點:

23、一個函數(shù)功能不太復雜,但要求被頻繁調(diào)用,選用()。

A.內(nèi)聯(lián)函數(shù)

B.重載函數(shù)

C.遞歸函數(shù)

D.嵌套函數(shù)

答案:A

分值:2

難度:1

知識點:

24、下面有關(guān)重載函數(shù)的說法中正確的是()。

A.重載函數(shù)必須具有不同的返回值類型

B,重載函數(shù)形參個數(shù)必須不同

C.重載函數(shù)必須有不同的形參列表

D.重載函數(shù)名可以不同

答案:C

分值:2

難度:1

知識點:

25、在C++語言中,對函數(shù)參數(shù)默認值描述正確的是()。

A.函數(shù)參數(shù)的默認值只能設(shè)定一個

B.一個函數(shù)的參數(shù)若有多個,則參數(shù)默認值的設(shè)定可以不連續(xù)

C.函數(shù)必須設(shè)定默認值

D.在設(shè)定參數(shù)的默認值后,該參數(shù)后面定義的所有參數(shù)都必須設(shè)定默認值

答案:D

分值:2

難度:1

知識點:

26、考慮函數(shù)原型voidtest(inta,intb=7,charz="*'),下面的函數(shù)調(diào)用中,屬于不合法調(diào)用的是

()。

A.test(5);

B.test(5,8);

C.test(6,'#');

D.test(O,O,,*,);

答案:c

分值:2

難度:1

知識點:

27、以下對C++函數(shù)的有關(guān)描述中,正確的是()。

A.C調(diào)用函數(shù)時,只能把實參的值傳給形參,形參的值不能傳遞給實參

B.C++函數(shù)既可以嵌套定義又可以遞歸調(diào)用

C.函數(shù)必須有返回值,否則不能使用函數(shù)

D.C++程序中有調(diào)用關(guān)系的所有函數(shù)必須放在同一源程序文件中

答案:A

分值:2

難度:1

知識點:

28、在C++語言中函數(shù)返回值的類型是由()決定的。

A.調(diào)用該函數(shù)時系統(tǒng)臨時

B.return語句中的表達式類型

C.定義該函數(shù)時所指定的函數(shù)類型

D.調(diào)用該函數(shù)時的主調(diào)函數(shù)類型

答案:C

分值:2

難度:1

知識點:

29、以下程序的輸出結(jié)果是()。

intfunc(inta,intb)

{returna+b;}

intmain()

{intx=6,y=7,z=8,r;

r=func(func(x,y),z-);

cout?r?endl;

}

A.15

B.20

C.21

D.31

答案:C

分值:2

難度:1

知識點:

30、以下程序的輸出結(jié)果是()。

voidfun(inta,intb,intc)

{a=456;b=567;c=678;}

intmain()

(intx=10,y=20,z=30;

fun(x,y,z);

cout?z?,,,,,?y?,7,?x?endl;

)

A.30,20,10

B.10,20,30

C.456,567,678

D.678,567,456

答案:A

分值:2

難度:1

知識點:

【程序閱讀、分析題】

1、寫出下面程序的運行結(jié)果

#include<iostream>

usingnamespacestd;

intfun(intn)

(

staticintm=2;

m=m+n;

returnm;

)

intmain()

(

inta=3,b=4;

intx;

x=fun(a);

x=fun(b);

cout?x?endl;

return0;

)

答案:9

分值:4

難度:3

知識點:

2、寫出以下程序的輸出結(jié)果

#include<iostream>

usingnamespacestd;

voidfun()

{staticinta=0;

a+=2;

cout?a;

)

intmain()

{intcc;

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

fun();

cout?endl;

return0;

)

答案:246

分值:4

難度:3

知識點:

3、閱讀下面程序:

#include<iostream>

usingnamespacestd;

longfib(intn)

{if(n>2)

return(fib(n-1)+fib(n-2));

else

return2;

)

intmain()

{cout?fib(3)?endl;

return0;

)

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

答案:4

分值:4

難度:1

知識點:

4、寫出程序運行的結(jié)果。

#include<iostream>

usingnamespacestd;

inti=l;

intmain(void)

(

inta=3;

intb=-10;

staticintc=0;

voidother(void);

cout?"…MAIN…\n";

cout?"i:n?i?na:,'?a++?nb:M?b?Hc:"?c?endl;

c=c+8;other();

cout?n—MAIN—\nM;

cout?ni:M?i?"a:n?++a?nb:,,?b?nc:M?c?endl;

i=i+10;other();

system("pause");

return0;

)

voidother(void)

(

staticinta=2;

staticintb;

intc=10;

a+=2;i+=30;c+=5;

cout?n—OTHER—\nH;

cout?ni:a:n?a?"b:c:n?c?endl;

b=a;

)

答案:

--MAIN---

i:1a:3b:-10c:0

—OTHER--

i:31a:4b:0c:15

—MAIN一

i:31a:5b:-10c:8

—OTHER—

i:71a:6b:4c:15

分值:4

難度:4

知識點:

5、寫出下列程序的運行結(jié)果。

#include<iostream>

usingnamespacestd;

intfun(intx)

(

if(x<=1)

(

return1;

)

else

returnx*fun(x-1);

)

intmain()

(

intn;

n=fun(4);

cout?n?endl;

return0;

)

答案:24

分值:2

難度:1

知識點:

6、寫出以下程序的執(zhí)行結(jié)果

#include<iostream>

usingnamespacestd;

intmaxl(intx,inty,intz)

(

return(y>z?y:z);

)

doublemaxi(doublex,doubley)

(

return(x>y?x:y);

}

doublemax1(doublex,doubley,doublez)

(

doubletemp1=maxl(x,y);

return(y>z?y:z);

)

intmain()

(

intx2;

doubledl,d2;

x2=max1(2,34);

dl=max1(2.1,5.6);

d2=maxl(12.3,3.4,7.8);

cout?nx2=n?x2?endl;

cout?"dl=n?dl?endl;

cout?,'d2=,*?d2?endl;

system("pause");

1

答案:

x2=4

dl=5.6

d2=7.8

分值:4

難度:3

知識點:

7、寫出下列程序的運行結(jié)果。

#include<iostream>

usingnamespacestd;

intfun(intx)

(

if(x<=0)

(

return0;

)

else

returnx*x+fun(x-1);

)

intmain()

(

intx=fun(3);

cout?x?endl;

return0;

1

答案:14

分值:4

難度:2

知識點:

8、寫出下列程序的運行結(jié)果。

#include<iostream>

usingnamespacestd;

intfun(inta=10,intb=100)

(

returna+b;

}

intmain()

(

intx=100;

cout?fun(x)?endl;

return0;

(

答案:200

分值:4

難度:1

知識點:

9、寫出下列程序的運行結(jié)果。

#include<iostream>

usingnamespacesld;

voidfun(inta[],intn,int&s)

(

s=0;

for(inti=0;i<n;i+=2)

s+=a[i];

)

intmain()

(

intx[5]={2,7,5,4,9);

intm;

fun(x,5,m);

cout?m?endl;

return0;

)

答案:16

分值:2

難度:1

知識點:

10、寫出下列程序的運行結(jié)果。

#include<iostream>

usingnamespacestd;

intmax(intx,inty)

(

returnx>y?x:y;

}

intmax(intx,inty,intz)

(

intt;

t=max(x,y);

returnt>z?t:z;

)

intmain()

(

intx=5,y=8,z=3;

cout?max(x,y,z)?endl;

return0;

)

答案:8

分值:2

難度:1

知識點:

11、運行下列程序

longfib(intg)

{switch(g)

{case0:return0;

case1:return1;

case2:return1;

)

return(fib(g-l)+fib(g-2));

)

main()

{longk;

k=fib(5);

cout?k?endl;

1

其輸出結(jié)果是:

答案:5

分值:4

難度:1

知識點:

【編程題】選做

1、設(shè)計兩個函數(shù),分別求兩個數(shù)的最大公約數(shù)和最小公倍數(shù)。

答案:pa301.txt

#include<iostream>

usingnamespacestd;

maxCommonDevisor(intn,intm){

inti;

for(i=n;i>=l;i-)

if(n%i==0&&m%i==0)break;

returni;J

minCommonMultiple(intn,intm){

inti;

for(i=n;i<=n*m;i++)

if(i%n==0&&i%m==0)break;

returni;}

intmain(){

inti,j;

coul<v”請輸入兩個整數(shù):,'?endl;

cin?i?j;

cout<<”最大公約數(shù):n?maxCommonDevisor(ij)

<<+'<<"最小公倍數(shù):"?minCommonMultiple(i,j)?endl;

return0;)

分值:10

難度:

知識點:

2、設(shè)計兩個重載函數(shù),分別求兩個整數(shù)相除的余數(shù)和兩個實數(shù)相除的余數(shù)。兩個實數(shù)求余

定義為實數(shù)四舍五入取整后相除的余數(shù)。

答案:pfa302.txt

#include<iostream>

#include<cmath>

usingnamespacestd;

mod(intn,intm){

returnn%m;

)

round(doublex){//四舍五入函數(shù)

if(x>=0)returnint(x+0.5);

elsereturnint(x-0.5);

)

mod(doublex,doubley){

returnround(x)%round(y);

)

intmain(){

cout?nmod(8,3)=,,<<mod(8,3)?endl;

cout?,'mod(8.2,3.6)=,,?mod(8.2,3.6)?endl;

cout?nmod(-8.2,-2.6)=n?mod(-8.2,-2.6)?endl;

return0;

}

分值:10

難度:

知識點:

【程序改錯題】選做

【章節(jié)】第4章數(shù)組

【知識點】

1、數(shù)組的相關(guān)概念

2、數(shù)組的定義及使用方法

3、C++字符串

4、數(shù)組的應用

【單選題】

1、若有以下程序:

#include<iostream>

usingnamespacestd;

intmain()

(

intI;

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

cout?a[i][l]?v

cout?endl;

return0;

}

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

A.495255

B.147

C.258

D.505356

答案:C

分值:2

難度:1

知識點:

2、下面程序的運行結(jié)果是()。

#include<isotream>

voidmian()

{charch[7]={“12ab56”};

intI,s=0;

fbr(I=0;ch[I]>=,0,&&ch[I]<=,9,;I+=2)

s=10*s+ch[I]-€0,;

cout?s;

)

A.1

B.12a56b

C.12ab56

D.1256

答案:A

分值:2

難度:1

知識點:

3、若有以下程序:

voidmain()

{inta[]={4,0,2,3,l}JJ,t;

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

{t=a[I];j=I-l;

while(j>=O&&t>a[j])

a[j+l]=a|j];

a|jl=t;

j-:

則該程序段的功能是()。

A.對數(shù)組a進行插入排序(升序)

B,對數(shù)組a進行插入排序(降序)

C.對數(shù)組a進行選擇排序(升序)

D,對數(shù)組a進行選擇排序(降序)

答案:B

分值:2

難度:1

知識點:

4、若有說明"inta[3][4]={0};",則下面正確的是()。

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

B.此說明語句不正確

C.數(shù)組a各元素都可得到初值,但其值不一定是0

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

答案:D

分值:2

難度:1

知識點:

5、以下程序的輸出結(jié)果是()。

#include<iostram>

intmain()

charb[尸,Hello,you”;

b[5]=0;

cout?b;

}

A.Hello,you

B.Hello

C.HeloOyou

D.Hell

答案:B

分值:2

難度:1

知識點:

6、當執(zhí)行下面的程序時,如果輸入ABC,則輸出結(jié)果是()。

#include<iostream>

#include<string>

intmain()

(

charss[10]="l,2,3,4,5”;

cin?ss;

strcat(ss,“6789”);

cout?ss;

}

A.ABC6789

B.ABC67

C.12345ABC6

D.ABC456789

答案:A

分值:2

難度:1

知識點:

7、以下程序的輸出結(jié)果是()。

#include<iostram>

intmain()

(

intb[3][3]={0,l,2,0,l,2,0,l,2),I,j,t=l;

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

f0r(j=I;j<=I;j++)

t=t+b[I][bU][j]];

cout?t;

)

A.3

B.4

C.1

D.9

答案:B

分值:2

難度:1

知識點:

8、以下不能正確賦進行字符串賦初值的語句是()。

A.charstr[5]="good!”;

B.charstr[]-,good!v;

C.char*str="good!'';

D.charstr[5]={'g','o','o','d'};

答案:A

分值:2

難度:1

知識點:

9、以下不能正確定義二維數(shù)組的選項是()。

A.inta[2H2]={{l},{2}};

B.inta[2][2]={{l},2,3};

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

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

答案:C

分值:2

難度:1

知識點:

10、在“intbH[3]={{l},{3,2},{4,5,6},{。}};",中b⑵⑵的值是()。

A.0

B.5

C.6

D.2

答案:C

分值:2

難度:1

知識點:

11、對于"int*pa[5];”的描述,()是正確的

A.pa是一個指向數(shù)組的指針,所指向的數(shù)組時5個int型元素

B.pa是一個指向某數(shù)組第5個元素的指針,該元素是int型元素

C.pa⑸表示某個數(shù)組的第5個元素的值

D.pa是一個具有5個元素的指針數(shù)組,每個元素是一個int型指針

答案:D

分值:2

難度:1

知識點:

12、在下列對字符數(shù)組進行初始化中()是正確的

A.charsl[]=,,abcd,,;

B.chars2[3]="xyz”;

C.chars3口卜{'a','x','y'};

D.chars4[2][3]={"xyz”,"mnp''};

答案:A

分值:2

難度:1

知識點:

13、有以下程序:

main()

{chara[10]="AbcdE龜9[b[10];

intj,k=O;

for(j=0,k=0;afjJi-VO*;j++)

{if((a[j]>=,A,&&a[j]<=,Z,||(a[j]>=,0,&&a[j]<=,9,))

{bfk]=a[j];k++;}

)

b[k]=0;

cout?b+3;

)

執(zhí)行結(jié)果為()o

A.AbcdEfg9

B.bcdfg

C.AE9

D.以上都不正確

答案:D

分值:2

難度:3

知識點:

14、有以下程序:

main()

(ini1,4,725,8,3,6,9};

intI,j,k=2;

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

{cout?m[k][I];}

)

執(zhí)行結(jié)果是()o

A.456

B.258

C.369

D.789

答案:C

分值:2

難度:1

知識點:

15、以下程序的輸出結(jié)果是()。

#include<iostram.h>

#include<string.h>

intmain()

charst[20]=,,hello\0\f,;

cout?strlen(st)?<^^"vvsizeof(st);

)

A.99

B.520

C.1320

D.2020

答案:B

分值:2

難度:1

知識點:

16、有以下程序:

#include<iostream>

#include<string>

usingnamespacestd;

intmain()

(

chars[]=n\nl23\V;

cout?strlen(s)?“J?sizeo心)?endl;

)

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

A.賦初值的字符串有錯

B.6,7

C.5,6

D.6,6

答案:C

17、如有以下定義語句:

inta[10];floatb[2];

則sizeof(a)和sizeof(b)的值為()。

A.24

B.102

C.408

D.00

答案:C

分值:2

難度:1

知識點:

18、如有數(shù)組名作為實參,則傳遞給形參的是()。

A.數(shù)組的首地址

B.第一個元素的值

C.數(shù)組中全部元素的值

D.數(shù)組元素的個數(shù)

答案:A

分值:2

難度:1

知識點:

19、有下列程序段:

#include<iostream>

usingnamespacestd;

intmain(){

charb[]=''HeIlo,you'';

b[5]=0;

cout?b?endl;

return0;

)

執(zhí)行此程序后,得到的輸出結(jié)果是()。

A.Hello,you

B.Helloyou

C.Hello

D.0

答案:C

分值:2

難度:1

知識點:

20、若有說明"inta[][4]={0,0};”則下列正確的敘述是()。

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

B.此說明語句不正確

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

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

答案:B

分值:2

難度:1

知識點:

21、以下程序的輸出結(jié)果是()。

#include<iostram.h>

#include<string.h>

intmain()

(

charst[20]=,,hello\0\tn;

cout?strlen(st)?<^^9,?sizeofijst);

A.99

B.520

C.1320

D.2020

答案:B

分值:2

難度:1

知識點:

22、有以下程序:

#include<iostream>

#include<string>

usingnamespacestd;

intmain()

chars[]=M\nl23\\M;

cout?strlen(s)?“J?sizeofifs)?endl;

)

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

A.賦初值的字符串有錯

B.6,7

C.5,6

D.6,6

答案:C

分值:2

難度:1

知識點:

23、如有以下定義語句:

inta[10];floatb[2];

則sizeof(a)和sizeof(b)的值為()。

A.24

B.102

C.00

D.408

答案:D

分值:2

難度:1

知識點:

24、如有數(shù)組名作為實參,則傳遞給形參的是()。

A.數(shù)組的首地址

B.第一個元素的值

C.數(shù)組中全部元素的值

D

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論