C++語(yǔ)言考試題試卷練習(xí)題模擬題選擇題含答案考卷3_第1頁(yè)
C++語(yǔ)言考試題試卷練習(xí)題模擬題選擇題含答案考卷3_第2頁(yè)
C++語(yǔ)言考試題試卷練習(xí)題模擬題選擇題含答案考卷3_第3頁(yè)
C++語(yǔ)言考試題試卷練習(xí)題模擬題選擇題含答案考卷3_第4頁(yè)
C++語(yǔ)言考試題試卷練習(xí)題模擬題選擇題含答案考卷3_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1.下列字符列中,可作為CH語(yǔ)言程序自定義標(biāo)識(shí)符是()0

A.switchB.fileC.breakD.do

2.運(yùn)算符+、0、=、%中,優(yōu)先級(jí)最低的運(yùn)算符是()。

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

3.設(shè)變量m,n,a,b,c,d均為0,執(zhí)行(m=a=b)||(n=c=d)后,m,n的值是()。[Commented|w11:短路

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

4.字符串"vm\x43\\\而\102qu”的長(zhǎng)度是(

A.8B.9C.16D.17

5.設(shè)有代碼“inta=6;",則執(zhí)行了語(yǔ)句"a+=a-="后,變量a的值是()。Commented|w2|:

A.0B.-24C.-40D.-60

6.voidmain()

{intx=-l;

do

{x=x*x;}

而ile(!x);}

下列說法正確的是()o

A,是死循環(huán)B.循環(huán)執(zhí)行兩次

C.循環(huán)執(zhí)行一次D.有語(yǔ)法錯(cuò)誤

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

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)括起來

8.下面程序段()o(Commented|w3|:從右到左x<=2為真I時(shí)

x=3;

do

{y=x-;

if(!y){cout?wx”;continue;}

cout?w#";}

while(l<=x<=2);(K=x)=1,0bool型

A.將輸出##B.將輸出

C.是死循環(huán)D.含有不合法的控制表達(dá)式

9.以下正確的說法是()o

A.用戶若需要調(diào)用標(biāo)準(zhǔn)函數(shù),調(diào)用前必須重新定義

B.用戶可以直接調(diào)用所有標(biāo)準(zhǔn)庫(kù)函數(shù)

C.用戶可以定義和標(biāo)準(zhǔn)庫(kù)函數(shù)重名的函數(shù),但是在使用時(shí)調(diào)用的是系統(tǒng)庫(kù)函數(shù)

D.用戶可以通過文件包含命令將系統(tǒng)庫(kù)函數(shù)包含到用戶源文件中,然后調(diào)用系統(tǒng)庫(kù)函數(shù)

10.在參數(shù)傳遞過程中,對(duì)形參和實(shí)參的要求是O。[Commented|w4]:

A.函數(shù)定義時(shí),形參一直占用存儲(chǔ)空間

B.實(shí)參可以是常量、變量或表達(dá)式

C.形參可以是常量、變量或表達(dá)式

D.形參和實(shí)參類型和個(gè)數(shù)都可以不同

11.對(duì)數(shù)組名作函數(shù)的參數(shù),下面描述正確的是()。[Commented|丫5幺

A.數(shù)組名作函數(shù)的參數(shù),調(diào)用時(shí)將實(shí)參數(shù)組復(fù)制給形參數(shù)組

B.數(shù)組名作函數(shù)的參數(shù),主調(diào)函數(shù)和被調(diào)函數(shù)共用一段存儲(chǔ)單元

C,數(shù)組名作參數(shù)時(shí),形參定義的數(shù)組長(zhǎng)度不能省略

D.數(shù)組名作參數(shù),不能改變主調(diào)函數(shù)中的數(shù)據(jù)

12.若有語(yǔ)句inta[10]={0,l,2,3,4,5,6,7,8,9},*p=a;貝!|()不是對(duì)a數(shù)組元素的正

確引用(其中0Wi<10)。

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

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

ftinclude<iostream.h>

voidmain()

{chars[]=*12134211*,*p;

intvl=0,v2=0,v3=0,v4=0;vlv2v3v4

for(p=s;*p;p++)2434

switch(*p)

(

case'I*:vl++;

case'3':v3++;

case'2*:v2++;

default:v4++;

)

cout?vl?*,*?v2?*,*?v3?*,*?v4?endl;

A.4,2,1,1B.4,7,5,8C.7,3,2,1D.8,8,8,8

14.下列聲明結(jié)構(gòu)體變量錯(cuò)誤的是()。

A.structstudentB.structstudent

{intno;{intno;

charname[16];charname[16];

}stl,st2;};

structstudentstl,st2

C.structstudentD.structstudent

{intno;{intno;

charname[16];charname[16];

);};

structstl,st2;studentstl,st2;

15.對(duì)類的構(gòu)造函數(shù)和析構(gòu)函數(shù)描述正確的是()<.

A.構(gòu)造函數(shù)可以重載,析構(gòu)函數(shù)不能重載

B.構(gòu)造函數(shù)不能重載,析構(gòu)函數(shù)可以重載

C.構(gòu)造函數(shù)可以重載,析構(gòu)函數(shù)也可以重載

D.構(gòu)造函數(shù)不能重載,析構(gòu)函數(shù)也不能重載

16.下面對(duì)于友元函數(shù)描述正確的是()o

A.友元函數(shù)的實(shí)現(xiàn)必須在類的內(nèi)部定義B.友元函數(shù)是類的成員

C.友元函數(shù)破壞了類的封裝性和隱藏性D.友元函數(shù)不能訪問類的私有成員

17.派生類的對(duì)象對(duì)它的基類成員中()是可以訪問的。

A.公有繼承的公有成員B.公有繼承的私有成員

C.公有繼承的保護(hù)成員D.私有繼承的公有成員

18.C++類體系中,不能被派生類繼承的有()<>

A.構(gòu)造函數(shù)B.虛函數(shù)C.靜態(tài)成員函數(shù)D.賦值操作函數(shù)

19.以下()成員函數(shù)表示虛函數(shù)。

A.virtualintvf(int);B.voidvf(int)=0;

C.virtualvoidvf()=0;D.virtualvoidvf(int){};(commented|L6]:純虛函數(shù),不用定義

20.下面對(duì)靜態(tài)數(shù)據(jù)成員的描述中,正確的是(),,

A.靜態(tài)數(shù)據(jù)成員可以在類體內(nèi)進(jìn)行初始化

B.靜態(tài)數(shù)據(jù)成員不可以在類體內(nèi)進(jìn)行初始化

C.靜態(tài)數(shù)據(jù)成員不能受private控制符的作用

D.靜態(tài)數(shù)據(jù)成員可以直接用類名調(diào)用??

21.繼承具有(),即當(dāng)基類本身也是某一個(gè)類派生類時(shí),底層的派生類也會(huì)自動(dòng)繼承間

接基類的成員。

A.規(guī)律性B.傳遞性C.重復(fù)性D.多樣性

22.若有以下定義,則釋放指針?biāo)竷?nèi)存空間的操作是(),>

floatr=newsfloat[10];

A.deleter;B.delete*r;

C.delete[]r;D.deleter[];

23.若有以下定義,則對(duì)字符串的操作錯(cuò)誤的是()。Commented|w7|:strcat(s1,s2):

chars[10]="Program〃,adds2tosi'stail.

A.strcpy(s,t);B.cout?strlen(s);[Commented|L8|:Copy」los

C.strcat(''this”,t);D.cin?t;

24.在if語(yǔ)句中的表達(dá)式是()。

A.只能是表達(dá)式B.只能是關(guān)系表達(dá)式和邏輯表達(dá)式

C.只能是邏輯表達(dá)式D.可以是任意表達(dá)式

25.在用關(guān)鍵字class定義的類中,以下敘述正確的是(),>

A.在類中,不作特別說明的數(shù)據(jù)成員均為私有類型

B.在類中,不作特別說明的數(shù)據(jù)成員均為公有類型

C.類成員的定義必須是成員變量定義在前,成員函數(shù)定義在后

D.類的成員定義必須放在類定義體內(nèi)部

一、選擇題

(1)下列關(guān)于棧的敘述正確的是

A)棧是非線性結(jié)構(gòu)B)棧是一種樹狀結(jié)構(gòu)

C)棧具有先進(jìn)先出的特征D)棧具有后進(jìn)先出的特征

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

A)輸入、處理、輸出B)樹形、網(wǎng)形、環(huán)形

C)順序、選擇、循環(huán)D)主程序、子程序、函數(shù)

(3)結(jié)構(gòu)化程序設(shè)計(jì)的一種基本方法是(Commented|w9|;

A)篩選法B)遞歸法C)歸納法D)逐步求精法

(4)如果對(duì)一個(gè)關(guān)系實(shí)施了一種關(guān)系運(yùn)算后得到了一個(gè)新的關(guān)系,而且新的關(guān)系中屬

性個(gè)數(shù)少于原來關(guān)系中屬性個(gè)數(shù),這說明所實(shí)施的運(yùn)算關(guān)系是:

A)選擇B)投影C)連接D)并

一:選擇題:

□(1)D(2)C(3)D(4)B

C++語(yǔ)言程序設(shè)計(jì)

口一、選擇題

(1)C++語(yǔ)言是從早期的C語(yǔ)言逐漸發(fā)展演變而來的.與C語(yǔ)言相比,它在求解問題

方法上進(jìn)行的最大改進(jìn)是()

A)面向過程B)面向?qū)ο驝)安全性D)復(fù)用性

(2)C++語(yǔ)言的跳轉(zhuǎn)語(yǔ)句中,對(duì)于break和continue說法正確的是O

A)break語(yǔ)句只應(yīng)用與循環(huán)體中

B)continue語(yǔ)句只應(yīng)用與循環(huán)體中

Qbreak是無條件跳轉(zhuǎn)語(yǔ)句,continue不是

D)break和continue的跳轉(zhuǎn)范圍不夠明確,容易產(chǎn)生問題

(3)for(intx=0,y=o;!x&&yv=5;y++)語(yǔ)句執(zhí)行循環(huán)的次數(shù)是()

A)0B)5C)6D)無次數(shù)__________________________

(4)考慮函數(shù)原型voidtest(intajntb=7,char="*"),下面的函數(shù)調(diào)用中,屬于不合法調(diào)(commented|L10]:默認(rèn)參數(shù)格會(huì)

用的是。

□A)test(5);B)test(5,8);C)test(6,H#n)D)test(O,O."*");

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

A)重教函數(shù)必須具有不同的返回值類型;B)重教函數(shù)形參個(gè)數(shù)必須不同;

C)重載函數(shù)必須有不同的形參列表D)重載函數(shù)名可以不同;

(6)下列關(guān)于構(gòu)造函數(shù)的描述中,錯(cuò)誤的是()

A)構(gòu)造函數(shù)可以設(shè)置默認(rèn)參數(shù);B)構(gòu)造函數(shù)在定義類對(duì)象時(shí)自動(dòng)執(zhí)行

C)構(gòu)造函數(shù)可以是內(nèi)聯(lián)函數(shù);D)構(gòu)造函數(shù)不可以重載

□:(7)下面描述中,表達(dá)錯(cuò)誤的是()

A)公有繼承時(shí)基類中的public成員在派生類中仍是public的

B)公有繼承是基類中的private成員在派生類中仍是private的

C)公有繼承時(shí)基類中的protected成員在派生類中仍是protected的

D)私有繼承時(shí)基類中的public成員在派生類中是private的

(8)應(yīng)在下列程序劃線處填入的正確語(yǔ)句是。

□^include

□classBase

□D{public:

voidfun(){cout?nBase::funH<};

classDerived:publicBase

□{voidfun()

{file://顯示調(diào)用基類的函數(shù)fun()

cout?**Derived::fun**<D□}

□:};

A)fun();B)Base.funO;C)Base::fun();D)Base->fun();

□□(9)有如下程序:

□C#include

□classBASE{

charc;

□public:

BASE(charn):c(n){}

virtual-BASE(){cout<!Jc);

classDERIVED:publicBASE{

□□charc;

□public:

DERIVED(charn):BASE(n+l),c(n){}

-DERIVED(){cout<c};

□intmain()

□□{DERIVED"”);

return0;

執(zhí)行上面的程序?qū)⑤敵鰆()〔Commented[2]:]

A)XYB)YXC)XD)Y

□□

(10)在進(jìn)行完任何C++流的操作后,都可以用C++流的有關(guān)成員函數(shù)檢測(cè)流的狀態(tài);

其中只能用于檢測(cè)輸入流狀態(tài)的操作函數(shù)名稱是。

□LA)failB)eofC)badD)good

-:選擇題

□1-5:BBCCC

□6-10:DBCAB

1、下列有關(guān)類的說法不正確的是()。

A.對(duì)象是類的一個(gè)實(shí)例

B.任何一個(gè)對(duì)象只能屬于一個(gè)具體的類

C.一個(gè)類只能有一個(gè)對(duì)象

D.類與對(duì)象的關(guān)系和數(shù)據(jù)類型與變量的關(guān)系相似

答案:C

分柝對(duì)象是類的一個(gè)實(shí)例,類與對(duì)象的關(guān)系和數(shù)據(jù)與變量的關(guān)系相似,所以一個(gè)類可

以有多個(gè)對(duì)象。

2、下面()項(xiàng)是對(duì)構(gòu)造函數(shù)和析構(gòu)函數(shù)的正確定義。

A.voidX::X(),voidX::~X()

B.X::X(參數(shù)),X::-X()

C.X::X(參數(shù)),X::~X(參數(shù))

D.voidX::X(參數(shù)),voidX::~X(參數(shù))

答案:B

分析構(gòu)造函數(shù)無返回類型、可帶參數(shù)、可重載;析構(gòu)函數(shù)無返回類型、不可帶參數(shù)、不可

重載。

3、()的功能是對(duì)象進(jìn)行初始化。

A.析構(gòu)函數(shù)B.數(shù)據(jù)成員C構(gòu)造函數(shù)D.靜態(tài)成員函數(shù)

答案:C

分析;當(dāng)一個(gè)對(duì)象定義時(shí),C++編譯系統(tǒng)自動(dòng)調(diào)用構(gòu)造函數(shù)建立該對(duì)象并進(jìn)行初始化;當(dāng)一

個(gè)對(duì)象的生命周期結(jié)束時(shí),C++編譯系統(tǒng)自動(dòng)調(diào)用析構(gòu)函數(shù)注銷該對(duì)象并進(jìn)行善后工作;

4、下列表達(dá)方式正確的是()。Comnienled|?12|:

A.classP{B.classP{

public:public:

intx=15;intx:

voidshowO{cout?x;}voidshowO{cout?x;}

);)

C.classP{D.classP{

intf;public:

);inta;

f=25;voidSeta(intx){a=x;}:

答案:D

分析:在類體內(nèi)不可對(duì)數(shù)據(jù)成員進(jìn)行初始化;類定義結(jié)束時(shí)需用分號(hào);只有類中的成員函

數(shù)才能存取類中的私有數(shù)據(jù)。

5、拷貝構(gòu)造函數(shù)具有的下列特點(diǎn)中,()是錯(cuò)誤的。

A.如果一個(gè)類中沒有定義拷貝構(gòu)造函數(shù)時(shí),系統(tǒng)將自動(dòng)生成一個(gè)默認(rèn)的

B.拷貝構(gòu)造函數(shù)只有一個(gè)參數(shù),并且是該類對(duì)象的引用

C.拷貝構(gòu)造函數(shù)是一種成員函數(shù)

D.拷貝構(gòu)造函數(shù)的名字不能用類名

答案:D

分析;如果一個(gè)類中沒有定義拷貝構(gòu)造函數(shù)時(shí),系統(tǒng)將自動(dòng)生成一個(gè)默認(rèn)的;拷貝構(gòu)造

函數(shù)只有一個(gè)參數(shù),并且是該類對(duì)象的引用;拷貝構(gòu)造函數(shù)的名字與類同名,并且不被

指定返回類型;拷貝構(gòu)造函數(shù)是一種成員函數(shù)。

6、關(guān)于靜態(tài)成員的描述中,()是錯(cuò)誤的。

A.靜態(tài)成員可分為靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù)

B.靜態(tài)數(shù)據(jù)成員定義后必須在類體內(nèi)進(jìn)行初始化

C.靜態(tài)數(shù)據(jù)成員初始化不使用其構(gòu)造函數(shù)

D.靜態(tài)數(shù)據(jù)成員函數(shù)中不能直接引用非靜態(tài)成員

答案:B

分析:靜態(tài)成員可分為靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù);靜態(tài)數(shù)據(jù)成員被定義后,必須對(duì)它

進(jìn)行初始化,初始化在類體外進(jìn)行,一般放在該類的實(shí)現(xiàn)部分最合適,也可以放在其

他位置,例如,放在主函數(shù)前面等靜態(tài)數(shù)據(jù)成員初始化與該類的構(gòu)造函數(shù)和析構(gòu)函數(shù)

無關(guān);在靜態(tài)成員函數(shù)的實(shí)現(xiàn)中,可以直接引用靜態(tài)成員,但不能直接引用非靜態(tài)成員。

7:關(guān)于友元的描述中,()是錯(cuò)誤的。

A.友元函數(shù)是成員函數(shù),它被說明在類體內(nèi)

B.友元函數(shù)可直接訪問類中的私有成員

C.友元函數(shù)破壞封裝性,使用時(shí)盡量少用

D.友元類中的所有成員函數(shù)都是友元函數(shù)

答案:A

8、;對(duì)類的構(gòu)造函數(shù)和析構(gòu)函數(shù)描述正確的是

A.構(gòu)造函數(shù)可以重載,析構(gòu)函數(shù)不能重載

B.構(gòu)造函數(shù)不能重載,析構(gòu)函數(shù)可以重載

C.構(gòu)造函數(shù)可以重載,析構(gòu)函數(shù)也可以重載

D.構(gòu)造函數(shù)不能重載,析構(gòu)函數(shù)也不能重載

答案:A

9、類的析構(gòu)函數(shù)的作用是()。

A.一般成員函數(shù)B.類的初始化C.對(duì)象初始化D.刪除對(duì)象

答案:D

10、假設(shè)OneClass為一個(gè)類,則該類的拷貝初始化構(gòu)造函數(shù)的聲明語(yǔ)句為(

A.OneClass(OneClassp);B.OneClass&(OneClassp);

C.OneClass(OneClass&p);D.OneClass(OneClass*p);

答案:C

11、為了使類中的某個(gè)成員不能被類的對(duì)象通過成員操作符訪問,則不能把該成員的訪問

權(quán)限定義為()。

A.publicB.protectedC.privateD.static

答案:A

12、下面對(duì)靜態(tài)數(shù)據(jù)成員的描述中,正確的是()o

A.靜態(tài)數(shù)據(jù)成員可以在類體內(nèi)進(jìn)行初始化

B.靜態(tài)數(shù)據(jù)成員不可以在類體內(nèi)進(jìn)行初始化

C.靜態(tài)數(shù)據(jù)成員不能受private控制符的作用

D.靜態(tài)數(shù)據(jù)成員可以直接用類名調(diào)用

答案:B

13、下面對(duì)靜態(tài)數(shù)據(jù)成員的描述中,正確的是()o

A.靜態(tài)數(shù)據(jù)成員是類的所有對(duì)象共享的數(shù)據(jù)

B.類的每一個(gè)對(duì)象都有自己的靜態(tài)數(shù)據(jù)成員

C.類的不同對(duì)象有不同的靜態(tài)數(shù)據(jù)成員值

D.靜態(tài)數(shù)據(jù)成員不能通過類的對(duì)象調(diào)用

答案:A

C++試題1

(1)已知下列語(yǔ)句中的x和丫都是hit型變量,其中不正確的語(yǔ)句是

A)y+=4-+x;B)++x+=y;C)y=x++;D)x++=y;

(2)若x是一個(gè)bool型變量,y是一個(gè)值為100的int型變量,則表達(dá)式!x&&y>0的值

I]。

A)為trueB)為falseC)與x的值相同D)與x的值相反

(3)執(zhí)行語(yǔ)句序列

intn;

cin?n;

switch(n){

case1:

case2:cout?*X*;

case3:

case4:coutw'Y';break;

defaultzcout^Z,;}

時(shí),不可能出現(xiàn)的情況是[|。

A)顯示:XB)顯示:YC)顯示:ZD)顯示:XY

(4)執(zhí)行語(yǔ)句序列

intx;

cin?x;

if(x>250)coutw'X';

if(x<250)cout?'Y*;

elsecout?*X*;

時(shí),不可能出現(xiàn)的情況是[|o

A)顯示:XB)顯示:YC)顯示:XYD)顯示:XX

(5)要定義一個(gè)具有5個(gè)元素的一維數(shù)組,并使其各元素的初值依次是30,50,?88,0和

0,則下列定義語(yǔ)句中不正確的是[|o

A)infvect|]={30,50,-88};B)intvect|]={30,50,-88,0,0);

C)intvect|51={30,50,-88};D)intvect[5]={30,50,-88,0,0};

(6)已知某應(yīng)用系統(tǒng)中已經(jīng)定義了函數(shù)fun,其原形是intfun(char=,A,);則下列函數(shù)中,

可以在同一系統(tǒng)中加以重載的是[]。

A)intfunO;B)intfun(char);

C)intfun(charUnt);D)intfun(char,double=0.0);

(7)若指針p定義為constchar*p="Luchy!”;貝|[1?

A)p所指向的數(shù)據(jù)不可改變,p在定義時(shí)可以不初始化。

B)p所指向的數(shù)據(jù)不可改變,p在定義時(shí)必須初始化。

C)p本身不可改變,p在定義時(shí)可以不初始化。

D)p本身不可改變,p在定義時(shí)必須初始化。

(8)己知數(shù)組A和指針p定義為:intA[20|[10],*p;,要使p指向A的首元素,正確的賦值

表達(dá)式是I]。

A)p=&A或p=A|0||01B)p=A或p=&A[0]|0]

C)p=&A|01或p=A|0||0|D)p=A[0|或p=&A[0)|0)

(9)己知函數(shù)func的原形是

doublefunc(doouble*pd,int&ri);

變量x和y的定義是

doublex;inty;

把x和y分別作為第一參數(shù)和第二參數(shù)來調(diào)用函數(shù)func,正確的調(diào)用語(yǔ)句是|]。

A)func(x,&y);B)func(&x,y);C)func(&x,&y);D)func(x,y);

(10)要使字符串變量str具有初值“Lucky”,正確的定義語(yǔ)句是|:Commented[wl3]:debug.A)沒有休止符

A)charstr[]={'L','u','c','k','y'};B)charstr[5]={'L','u','c','k','y'};

C)charstr||=nLuckyH;D)charstr|51=MLuckyH;

(11)已知某函數(shù)的一個(gè)形式參數(shù)被說明為MAT網(wǎng)在下列說明中,與此等效的形參

說明是[]o

A)intMATIH10]B)intMAT|3]||

C)intMAT|10|[3]D)intMAT[川

(12)若指針p定義為char*="Luchy!”;則[]。

A)p所指向的數(shù)據(jù)不可改變,p在定義時(shí)可以不初始化。

B)p所指向的數(shù)據(jù)不可改變,p在定義時(shí)必須初始化。

C)p本身不可改變,p在定義時(shí)可以不初始化。

D)p本身不可改變,p在定義時(shí)必須初始化。

(13)在下列表達(dá)式中,與下標(biāo)引用不等效的是|]。

A)*(A+i+j)B)*(A|i]+j)C)*(*(A+i)+j)D)(*(A+i))|j|

(14)要使語(yǔ)句p=newdouble[20];能夠正常執(zhí)行,變量p應(yīng)定義為[]。

A)doublep|20|;B)doublep;

C)double(*p)|20J;D)double*p;

(15)執(zhí)行下列語(yǔ)句序列[Commented|w14]:

structAA{intival;chareval;};

structBB{intival;AAra;};

structCC{intival;AAra;BBrb;};

CCrc={66,{rc.ival+l,rc.ra.ival+l},{69,{70,71}}};

cout?rc.ival?,/?rc.ra.ival?,/?rc.rb.ra.ival;

后,顯示在屏幕上的是[|o

A)66,67,68B)67,68,69C)66,67,70D)67,69,70

(16)類的默認(rèn)的無參構(gòu)造函數(shù)|)o

A)在任何情況下都存在

B)僅當(dāng)未定義無參構(gòu)造函數(shù)時(shí)存在

C)僅當(dāng)未定義有參構(gòu)造函數(shù)時(shí)存在

D)僅當(dāng)未定義任何構(gòu)造函數(shù)時(shí)存在

(17)語(yǔ)句ofstreamf(nSALARY.DATn,ios::noreplace|ios::binary);的功能是建立流對(duì)象

f,并試圖打開文件SALARY.DAT并與之連接,而且[

A

若文件存在,將文件指針定位于文件尾;若文件不存在,建立一個(gè)新文件。

BC)若文件存在,將其載為空文件;若文件不存在,打開失敗。

D若文件存在,將文件指針定位于文件首;若文件不存在,建立一個(gè)新文件。

若文件存在,打開失敗;若文件不存在,建立一個(gè)新文件。

(18)執(zhí)行下列語(yǔ)句序列

structAA{intival;chareval;};

structintival;AAra;};

structCC{intival;AA*ra;BBrb;};

CCrc={66,newAA,{69,{70,71}}};

rc.ra->ival=rc.ival+l;

rc.ra->cval=rc.ra->ival+1;

cout?rc.ival?,,,?rc.ra->ival?,/?rc.rb.ra.ival;

后,顯示在屏幕上的是[]o

A)67,69,70B)66,67,70C)67,68,69D)66,67,68

(19)類的默認(rèn)的拷貝構(gòu)造函數(shù)|Jo

A)在任何情況下都存在

B)僅當(dāng)未定義拷貝構(gòu)造函數(shù)時(shí)存在

C)僅當(dāng)未定義有參構(gòu)造函數(shù)時(shí)存在

D)僅當(dāng)未定義任何構(gòu)造函數(shù)時(shí)存在

(20)語(yǔ)句ofstreamf(**SALARY.DAT*\ios::nocreate|ios::trunc);的功能是建立流對(duì)象f,

并試圖打開文件SALARY.DAT并與之連接,而且|

A)若文件存在,將文件指針定位于文件尾;若文件不存在,建立一個(gè)新文件。

B)若文件存在,將其截為空文件;若文件不存在,打開失敗。

C)若文件存在,將文件指針定位于文件首;若文件不存在,建立一個(gè)新文件。

D)若文件存在,打開失?。蝗粑募淮嬖?,建立一個(gè)新文件。

答案:]?5:DDACA6?CADBC

11?IS:ADADC16?20:DDBBB

C++試題2

1.下列變量名中,()是合法的。

A.56AB._abcC.d-PtrD.while

2.下列各種運(yùn)算符中,()優(yōu)先級(jí)最高。jCommented|wl5|:)

A.+B.&&C.==D.*=

3.設(shè)變量m,n,a,b,c,d均為0,執(zhí)行(m=a==b)&&(n;c=d)后,m,n的值是()?

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

4.字符串”\t\v\\\0which\n”的長(zhǎng)度是(

A.4B.10C.9D.字符串有非法字符,輸出值不確定

5.設(shè)a=2,b=3,c=2;計(jì)算a+=b*=(++b-c++)中a、b>c的值()。

A.8、6、2B.2、4、2C.10、8、3D,5、3、3

6.已知:inti=5,下列do-while循環(huán)語(yǔ)句的循環(huán)次數(shù)為()。

do{cout?i一?endl;

i一;

}while(i!=0);

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

7.下面關(guān)于循環(huán)語(yǔ)句的描述中,()是錯(cuò)誤的。

A.循環(huán)體內(nèi)可以包含有循環(huán)語(yǔ)句

B.循環(huán)體內(nèi)必須同時(shí)出現(xiàn)break語(yǔ)句和continue語(yǔ)句

C.循環(huán)體內(nèi)可以出現(xiàn)選擇語(yǔ)句

D.循環(huán)體內(nèi)可以是空語(yǔ)句

8.下面程序段()。Commented|w16):

x=3;

do

if(!y){cout?wx";continue;}

cout?w#";}

while(x>=l&&x<=2);

A.將輸出##B.將輸出鞘#

C.是死循環(huán)D.含有不合法的控制表達(dá)式

9.在函數(shù)的定義格式中,下面各組成部分中,()是可以省略的。(Commentedlwl"]

A.函數(shù)名B.函數(shù)體C.函數(shù)數(shù)據(jù)類型說明D.函數(shù)參數(shù)

10.在函數(shù)的引用調(diào)用時(shí),實(shí)參和形參應(yīng)該是使用()。

A.變量值和變量B.地址值和指針C.變量值和引用D.地址值和引用

11.以下關(guān)于文件操作的敘述中,不正確的是()o

A.打開文件的目的是使文件對(duì)象與磁盤文件建立聯(lián)系

B.文件讀寫過程中,程序?qū)⒅苯优c磁盤文件進(jìn)行數(shù)據(jù)交換

C.關(guān)閉文件的目的之一是保證將輸出的數(shù)據(jù)寫入硬盤文件

D.關(guān)閉文件的目的之一是釋放內(nèi)存中的文件對(duì)象

12.若有語(yǔ)句inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;則()不是對(duì)a數(shù)組元素的正____________________________________________

確引用(其中0Wi〈lO)。^Commented|w18]:一二]

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

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

#include<iostream.h>

voidmainO

{chars[]=*abcdefbcde*,*p=s;

intvl=0,v2=0,v3=0,v4=0;

for(p;*p;p++)

switch(*p)

(

case'a':vl++;break;

case'b':v3++;break;

case'e:v2++;break;

default:v4++;

)

cout?vl?*,*?v2?*,*?v3?*,*?v4?endl;

}

A.1,2,2,5B.4,7,5,8C.1,5,3,10D.8,8,8,8

14.下列結(jié)構(gòu)體定義,正確的是|oCommented|w!9|:

A.record{B.structrecord{

intno;intno;

charnum[16];charnum[16];

floatscore;floatscore;

};)

C.structrecord{D.structrecord{

intno;intno

charnum[16];charnum[16]

floatscore;floatscore

))

15.下列是構(gòu)造函數(shù)的特點(diǎn),()是錯(cuò)誤的。Commented|w20]:

A.構(gòu)造函數(shù)是一種成員函數(shù),它具有一般成員函數(shù)的特點(diǎn)

B.構(gòu)造函數(shù)的名稱與其類名相同

C.構(gòu)造函數(shù)必須指明其類型

D.一個(gè)類中可定義一個(gè)或多個(gè)構(gòu)造函數(shù)

16.關(guān)于友元函數(shù)的描述中,()是錯(cuò)的。Commented|w21|:

A.友元函數(shù)是成員函數(shù),它被說明在類體內(nèi)

B.友元函數(shù)可直接訪問類中的私有成員

C.友元函數(shù)破壞封裝性,使用時(shí)盡量少用

D.友元類中的所有成員函數(shù)都是友元函數(shù)

17.下列對(duì)派生類的描述中,()是錯(cuò)誤的。

A.一個(gè)派生類可以作為另一個(gè)派生類的基類

B.派生類至少應(yīng)有一個(gè)基類

C.基類中成員訪問權(quán)限繼承到派生類中都保持不變

D.派生類的成員除了自己定義的成員外,還包含了它的基類成員

18.C++類體系中,能被派生類繼承的有()。

A.構(gòu)造函數(shù)B.虛函數(shù)C.友元函數(shù)D.析構(gòu)函數(shù)

19.關(guān)于下列虛函數(shù)的描述中,()是正確的。

A.虛函數(shù)是一個(gè)static存儲(chǔ)類的成員函數(shù)

B.虛函數(shù)是一個(gè)非成員函數(shù)

C.基類中說明了虛函數(shù)后,派生類中將其對(duì)應(yīng)的函數(shù)可不必說明為虛函數(shù)

D.派生類的虛函數(shù)與基類的虛函數(shù)應(yīng)具有不同的類型或個(gè)數(shù)

(Commented

20.以下有關(guān)靜態(tài)數(shù)據(jù)成員函數(shù)的敘述不正確的是(

A.靜態(tài)成員函數(shù)屬于整個(gè)類

B.對(duì)靜態(tài)成員函數(shù)的引用不允許使用對(duì)象名

C.在靜態(tài)成員函數(shù)中不能直接引用類的非靜態(tài)成員

D.使用類名可以直接調(diào)用其靜態(tài)成員函數(shù)

21.下列有關(guān)運(yùn)算符重載的描述中,()是正確的。Commented|w23|:)

A.運(yùn)算符重載可改變其優(yōu)先級(jí)B.運(yùn)算符重載不改變其語(yǔ)法結(jié)構(gòu)

C.運(yùn)算符重載可改變其結(jié)合性D.運(yùn)算符重載可改變其操作數(shù)的個(gè)數(shù)

22.對(duì)new運(yùn)算符的下列描述中,()是錯(cuò)誤的。

A.它可以動(dòng)態(tài)創(chuàng)建對(duì)象和對(duì)象數(shù)組

B.用它創(chuàng)建對(duì)象數(shù)組時(shí)必須指定初始值

C.用它創(chuàng)建對(duì)象時(shí)要調(diào)用構(gòu)造函數(shù)

D.用它創(chuàng)建的對(duì)象可以使用運(yùn)算符delete來釋放

23.下列是為字符數(shù)組賦字符串的語(yǔ)句組,其中錯(cuò)誤是().

A.chars[10];s="programw;B.chars□:“programw;「Commented|L24]:數(shù)組名字是指針常量,不可改變)

C.chars[10]=wHello!";D.chars[10];strcpy(s,nhello!");

24.當(dāng)調(diào)用函數(shù)時(shí),實(shí)參是一個(gè)一維數(shù)組名a,則向函數(shù)傳送的是()o

A.數(shù)組的長(zhǎng)度B.數(shù)組所有元素的值

C.數(shù)組元素a[0]的值D.數(shù)組元素a[0]的地址

25.下列有關(guān)類的說法不正確的是()。

A.對(duì)象是類的一個(gè)實(shí)例

B.任何一個(gè)對(duì)象只能屬于一個(gè)具體的類

C.一個(gè)類只能有一個(gè)對(duì)象

D.類與對(duì)象的關(guān)系和數(shù)據(jù)類型與變量的關(guān)系相似

答案:1?5:BADBC6M0:DBBDC

11?15:BBACC16?20:ACBCB

_______21?25:BBADC

1:指出下列對(duì)定義重載函數(shù)的要求中,哪些是錯(cuò)誤的提法。

A.要求參數(shù)的個(gè)數(shù)相同。B.要求參數(shù)中至少有一個(gè)類型不同。

C.求函數(shù)的返回值不同。D.要求參數(shù)的個(gè)數(shù)相同時(shí),參數(shù)類型不同。

答案:C

2:下列運(yùn)算符中,()運(yùn)算符在C++中不能重載。

A.?:B.|]C.newD.&&

答案:A

3:下面關(guān)于友元的描述中,錯(cuò)誤的是()o

A.友元函數(shù)可以訪問該類的私有數(shù)據(jù)成員

B.一個(gè)類的友元類中的成員函數(shù)都是這個(gè)類的友元函數(shù)

C.友元可以提高程序的運(yùn)行效率

D.類與類之間的友元關(guān)系可以繼承

答案:D

4:下述靜態(tài)成員的特性中,()是錯(cuò)誤的。

A.錚態(tài)成員函數(shù)不能利用this指針

B.靜態(tài)數(shù)據(jù)成員要在類體外進(jìn)行初始化

C.引用靜態(tài)數(shù)據(jù)成員時(shí),要在靜態(tài)數(shù)據(jù)成員名前加〈類名〉和作用域運(yùn)算符

D.靜態(tài)數(shù)據(jù)成員不是所有對(duì)象所共有的

答案:D

5:關(guān)于虛函數(shù)的描述中,()是正確的。

A.虛函數(shù)是一個(gè)靜態(tài)成員函數(shù)

B.虛函數(shù)是一個(gè)非成員函數(shù)

C.虛函數(shù)既可以在函數(shù)說明時(shí)定義,也可以在函數(shù)實(shí)現(xiàn)時(shí)定義

D.派生類的虛函數(shù)與基類中對(duì)應(yīng)的虛函數(shù)具有相同的參數(shù)個(gè)數(shù)和類型

答案:D

6:下列關(guān)于動(dòng)態(tài)聯(lián)編的描述中,錯(cuò)誤的是()。

A.動(dòng)態(tài)聯(lián)編是以虛函數(shù)為基礎(chǔ)

B.動(dòng)態(tài)聯(lián)編是運(yùn)行時(shí)確定所調(diào)用的函數(shù)代碼的

C.動(dòng)態(tài)聯(lián)編調(diào)用函數(shù)操作是指向?qū)ο蟮闹羔樆驅(qū)ο笠?/p>

D.動(dòng)態(tài)聯(lián)編是在編譯時(shí)確定操作函數(shù)的

答案:D

8:下面4個(gè)選項(xiàng)中,()是用來聲明虛函數(shù)的。

A.virtualB.publicC.usingD.false

答案:A

9:編譯時(shí)的多態(tài)性可以通過使用()獲得。

A.虛函數(shù)和指針B.重載函數(shù)和析構(gòu)函數(shù)C.虛函數(shù)和對(duì)象D.虛函數(shù)和引

答案:A

10:美于純虛函數(shù)和抽象類的描述中,錯(cuò)誤的是()。

A.純虛函數(shù)是一種特殊的虛函數(shù),它沒有具體的實(shí)現(xiàn)

B.抽象類是指具體純虛函數(shù)的類

C.一個(gè)基類中說明有純虛函數(shù),該基類派生類一定不再是抽象類

D.抽象類只能作為基類來使用,其純虛函數(shù)的實(shí)現(xiàn)由派生類給出

答案:B

11:下列描述中,()是抽象類的特征。

A.可以說明虛函數(shù)B.可以進(jìn)行構(gòu)造函數(shù)重載C.可以定義友元函數(shù)D.不能說

明其對(duì)象

答案:D

12:以下()成員函數(shù)表示虛函數(shù)。

A.virtualintvf(int);B.voidvf(int)=0;

C.virtualvoidvf()=0;D.virtualvoidvf(int){};

答案:D

13:如果一個(gè)類至少有一個(gè)純虛函數(shù),那么就稱該類為(A

A.抽象類B.虛函數(shù)C.派生類D.以上都不對(duì)

答案:A

14:要實(shí)現(xiàn)動(dòng)態(tài)聯(lián)編,必須通過()調(diào)用虛函數(shù)。

A.對(duì)象指針B.成員名限定C.對(duì)象名D.派生類

答案:A

15:下面描述中,正確的是()<>

A.virtual可以用來聲明虛函數(shù)

B.含有純虛函數(shù)的類是不可以用來創(chuàng)建對(duì)象的,因?yàn)樗翘摶怌ommented|L25):抽象類不能創(chuàng)建對(duì)象,只能使用該類

C.即使基類的構(gòu)造函數(shù)沒有參數(shù),派生類也必須建立構(gòu)造函數(shù)作為其他類的基類

D.靜態(tài)數(shù)據(jù)成員可以通過成員初始化列表來初始化

答案:A

(

16:已知inta,*pa=&a;輸出指針pa十進(jìn)制的地址值的方法是()。Commented|w26|:

A.cout?pa;B.cout?*pa;

C.cout?&pa;D.cout?long(&pa);

答案:D

17:關(guān)于read。函數(shù)的下列描述中,()是對(duì)的。

A.函數(shù)只能從鍵盤輸入中獲取字符串

B.函數(shù)所獲取的字符多少是不受限制的

C.該函數(shù)只能用于文本文件的操作中

D.該函數(shù)只能按規(guī)定讀取所指定的字符數(shù)

答案:D

18:下列一維數(shù)組定義正確的是(Commented|w27|:數(shù)組維數(shù)只能包含整形字面值常量、

A.x=6;intnum[x];B.constintx=6;floata[x];枚舉常量或者常量表達(dá)式

B.constfloatx=6;intb[x];D.constintx=6;intc[x];

答案:B,

19:下面選項(xiàng)中等價(jià)的是()o

A.inta[2][3]={1,0,2,2,4,5}與inta[2][]={1,0,2,2,4,5};

B.inta[][3]={1,0,2,2,4,5}與inta[2][3]={1,0,2,2,4,5);

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

D.inta[2][3]={0,1}與inta[2][3]={{0},{1});

答案:B,

20:下面程序的輸出結(jié)果是()o

#include<iostream.h>

voidmain()

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

intsum=0;

for(intI=1;I<3;I++)

for(intj=O;j<=I;j++)

sum+=a[I][j];

cout?sum?endl;

}

A.12B.14C.15D.13

答案:A

21:下列數(shù)組的定義中,()是錯(cuò)誤的。

A.charcal口={'c','m','n'};B.charca2=,,name,z;

C.charca3[4]=z,yourzz;D.intarray[]={1,2,3,4};

答案:C

22:下面程序的輸出結(jié)果是(),,

#include<iostream.h>

#include〃string.h〃

voidmain()

,,//=,,z,

{chara[]=welcome>b[]well;

strcpy(a,b);

cout?a?endl;

)

A.wellomeB.wellomC.wellD.wellwe

答案:C

23:下面關(guān)于數(shù)組的說法正確的是()o

A.它與普通變量沒什么區(qū)別B.它的元素的數(shù)據(jù)類型可以相同,也可以不同

C.它用數(shù)組名標(biāo)識(shí)其元素D.數(shù)組的元素的數(shù)據(jù)類型是相同的

D

24:下列說法正確的是()<,

A.字符型數(shù)組與整型數(shù)組可通用

B.字符型數(shù)組與字符串其實(shí)沒什么區(qū)別

C.當(dāng)字符串放在字符數(shù)組中,這時(shí)要求字符數(shù)組長(zhǎng)度比字符串長(zhǎng)1個(gè)單元,因?yàn)橐?/p>

字符串終結(jié)符,\0,

D.字符串的輸出可以用它所存儲(chǔ)的數(shù)組來輸出,也可以字符串的形式整體輸出,結(jié)果

沒區(qū)別

C

25:給出下面定義:

chara[]=,/abcdz,;

charb[]={'a,Jb,,,c','d,};

則下列說法正確的是

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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)論