C語言考試復(fù)習(xí)題_第1頁
C語言考試復(fù)習(xí)題_第2頁
C語言考試復(fù)習(xí)題_第3頁
C語言考試復(fù)習(xí)題_第4頁
C語言考試復(fù)習(xí)題_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

類與對象

一、選擇填空

1.已知一個類A,

()是指向A類成員的指針。假設(shè)類有3個公

有成員;voidf1(int)voidf2(int)和inta。

A.A*p;

B.intA:*pc=&A:a;

C.voidA:*pa()

;

D.A*pp;

答案:C。

2.運算符->*的功能是()

。

A.用來表示指向?qū)ο笾羔槍χ赶蝾惓蓡T指針的操作。

B.用來表示對象對指向類成員指針的操作。

C用來表示指向?qū)ο笾羔槍︻惓蓡T的操作。

D用來表示對象類成員的操作。

答案:A。

3.已知f1(int)是類A的公有成員函數(shù),p是指向成員函數(shù)f1

()的指針,采用()是正確的。

A.p=f1;

B.p=A:f1;

C.p=A:f1()

;

D.p=f1()

答案:B。

4.已知:p是一個指向類A數(shù)據(jù)成員m的指針,A1是類A的一

個對象。如果要給m賦值為5,

()是正確的。

A.A1.p=5;

B.A1->p=5;

C.A1.*p=5;

D.*A1.p=5;

答案:C。

5.已知類A中一個成員函數(shù)說明如下所示。

voidSet(A&a)

其中,A&a的含意是()

。

A.指向類A的指針a。

B.將a的地址值賦給變量Set。

C.a(chǎn)是類A的對象引用,用來作函數(shù)Set()的形參。

D.變量A與a按位相與作為函數(shù)Set()的參數(shù)。

答案:C。

6.下列關(guān)于對象數(shù)組的描述中,

()是錯誤的。

A.對象數(shù)組的下標(biāo)是從0開始的。

B.對象數(shù)組的數(shù)組名是一個常量指針。

C.對象數(shù)組的每個元素是同一個類的對象。

D.對象數(shù)組只能賦初值,而不能被賦值。

答案:D。

7.下列定義中,

()是定義指向數(shù)組的指針p。

A.int*p[5];

B.int(*p)[5];

C.int*)p[5];

D.int*p[];

答案:B。

8.下列說明中

constchar*ptr

ptr應(yīng)該是()

。

A.指向字符常量的指針。

B.指向字符的常量指針。

C.指向字符串常量的指針。

D.指向字符串的常量指針。

答案:C。

9.已知:print()函數(shù)是一個類的常成員函數(shù),它無返回值,下

列表示中,

()是正確的。

A.voidprint()const;

B.constvoidprint()

;

C.voidconstprint()

D.voidprint(const)

。

答案:A。

10.關(guān)于new運算符的下列描述中,

()是錯的。

A.它可以用來動態(tài)創(chuàng)建對象和對象數(shù)組。

B.使用它創(chuàng)建的對象或?qū)ο髷?shù)組,可以使用運算符delete

刪除。

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

D.使用它創(chuàng)建對象數(shù)組是必須指定初始化。

答案:D。

11.關(guān)于delete運算符的下列描述中,

()是錯的。

A.它必須用于new返回的指針。

B.它也適用于空指針。

C.對一個指針可以適用多次該運算符。

D.指針名前只用一對方括號符,不管所刪除數(shù)組的維數(shù)。

答案:C。

12.具有轉(zhuǎn)換函數(shù)功能的構(gòu)造函數(shù),應(yīng)該是()

。

A.不帶任何參數(shù)的構(gòu)造函數(shù)。

B.帶有一個參數(shù)的構(gòu)造函數(shù)。

C.帶有兩個以上的參數(shù)的構(gòu)造函數(shù)。

D.默認(rèn)構(gòu)造函數(shù)。

答案:B。

二、判斷下列描述是否正確。

1.指向?qū)ο蟮闹羔樅椭赶蝾惖某蓡T的指針在表達(dá)形式上是不相

同的。

(正確)

2.已知:m是類A的對象,n是類A的公有數(shù)據(jù)成員,p是指向

類A中n成員的指針。下述兩種表示是等價的。

m.n和m.*p.(正確)

3.指向?qū)ο蟮闹羔樑c獨享都可以作為函數(shù)參數(shù),但是使用前者比

后者好些。

(正確)

4,。對象引用作函數(shù)參數(shù)比用對象指針更方便些。

(正確)

5.對象數(shù)組的元素可以是不同類的對象。

(錯誤)

6.對象數(shù)組既可以賦初值又可以賦值。

(正確)

7.指向?qū)ο髷?shù)組的指針不一定必須指向數(shù)組的首元素。

(正確)

8.一維對象指針數(shù)組的每個元素應(yīng)該是某個類的對象的地址值。

(正確)

9.constchar*p說明了p是指向字符串常量的指針。

(正確)

10.一個能夠更新的變量使用在一個不能更新的環(huán)境中是不破壞

類型保護(hù)的,反之亦然。

(錯誤)

11.一個類的構(gòu)造函數(shù)中可以不包含對其子對象的初始化。(錯

誤)

12.轉(zhuǎn)換函數(shù)不是成員函數(shù),它是用來進(jìn)行強制類型轉(zhuǎn)換的。

(錯

誤)

繼承性和派生類

一、選擇填空

1.下列對派生類的描述中,

()是錯的。

A.一個派生類可以作為另外一個派生類的基類。

B.派生類至少有一個基類。

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

員。

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

答案:D。

2.派生類的對象對它的基類中()是可以訪問的。

A.公有繼承的公有成員。

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

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

D.私有繼承的公有成員。

答案:A。

3.對基類和派生類的關(guān)系描述中,

()是錯的。

A.派生類是基類的具體化。

B.派生類是基類的子集。

C.派生類是基類定義的延續(xù)。

D.派生類是基類的組合。

答案:B

4.派生類的構(gòu)造函數(shù)的成員初始化表中,不能包含()

A.基類的構(gòu)造函數(shù)。

B.派生類中子對象的初始化。

C.基類的子對象初始化。

D.派生類中一般數(shù)據(jù)成員的初始化。

答案:C。

5.關(guān)于子類型的描述中,

()是錯的。

A.子類型就是指派生類是基類的子類型。

B.一種類型當(dāng)它至少提供了另一種類型的行為,則這種類型

是另一種類型的子類型。

C.在公有繼承下,派生類是基類的子類型。

D.子類型關(guān)系是不可逆的。

答案:A。

6.關(guān)于多繼承二義性的描述中,

()是錯的。

A.一個派生類的兩個基類中都有某個同名成員,在派生類中

對這個成員的訪問可能出現(xiàn)二義性。

B.解決二義性的最常用的方法是對成員函數(shù)的限定法。

C.基類和派生類中同時出現(xiàn)的同名函數(shù),也存在二義性問題。

D.一個派生類是從兩個基類派生來的,而這兩個基類又有一

個共同的基類,對該基類成員進(jìn)行訪問時,也可能出現(xiàn)二

義性。

答案:C。

7.設(shè)置虛基類的目的是()

。

A.簡化程序。

B.消除二義性。

C.提高運行效率。

D.減少目標(biāo)代碼。

答案:B。

8.帶有虛基類的多層派生類構(gòu)造函數(shù)的成員初始化列表中都要

列出虛基類的構(gòu)造函數(shù),這樣將對虛基類的子對象初始化()

A.與虛基類下面的派生類個數(shù)有關(guān)。

B.多次。

C.二次。

D.一次。

答案:D。

二、判斷下列描述的正確性。

1.C++語言中,既允許單繼承,有允許多繼承。

(正確)

2.派生類是從基類派生出來,它不能再生成新的派生類。

(錯誤)

3.派生類的繼承方式有兩種:公有繼承和私有繼承。

(錯誤)

4.在公有繼承中,基類中的公有成員和私有成員在派生類中都

是可見的。

(錯誤)

5.在公有繼承中,基類中只有公有成員對派生類對象時可見的。

(正確)

6.在私有繼承中,基類中只有公有成員對派生類是可見的。

(錯

誤)

7.在私有繼承中,基類中所有成員對派生類的對象都是不可見

的。

(正確)

8.在保護(hù)繼承中,對于垂直訪問同于公有繼承,而對于水平訪

問同于私有繼承。

(正確)

9.派生類是它的基類的組合。

10.構(gòu)造函數(shù)可以被繼承。

(錯誤)

11.析構(gòu)函數(shù)不能被繼承(正確)

12.子類型是不可逆的。

(正確)

13.只要是類M繼承了類N,

就可以說類M是類N的子類型。錯

誤)

14.如果A類型是B類型的子類型,A類型必然適應(yīng)于B類型。

(正確)

15.多繼承情況下,派生類的構(gòu)造函數(shù)的執(zhí)行順序取決于定義派

生類時所指定的各基類的順序。

(正確)

16.單繼承情況下,派生類中對基類成員的訪問會出現(xiàn)二義性。

(錯誤)

17.解決多繼承情況下出現(xiàn)的二義性的方法之一是使用成員名限

定法。

(正確)

18.虛基類是用來解決多繼承中公共基類在派生類中只產(chǎn)生一個

基類子對象的問題。

(正確)

多態(tài)性與虛函數(shù)

一、選擇填空

1.對定義重載函數(shù)的下列要求中,

()是錯誤的。

A.要求參數(shù)的個數(shù)不同。

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

C.要求參數(shù)個數(shù)相同時,參數(shù)類型不同。

D.要求函數(shù)的返回值不同。

答案:D

2.下列函數(shù)中,

()不能重載。

A.成員函數(shù)。

B.非成員函數(shù)。

C.析構(gòu)函數(shù)。

D.構(gòu)造函數(shù)。

答案:C。

3.下列對重載函數(shù)的描述中,

()是錯誤的。

A.重載函數(shù)中不允許使用默認(rèn)參數(shù)。

B.重載函數(shù)中編譯系根據(jù)參數(shù)表進(jìn)行選擇。

C.不要使用重載函數(shù)來描述毫無相干的函數(shù)。

D.構(gòu)造函數(shù)重載將會給初始化帶來多種方式。

答案:A。

4.下列運算符中()運算符不能重載。

A.&&。

B.[]。

C.:

:。

D.new。

答案:C。

5.下列關(guān)于運算符重載的描述中,

()是正確的。

A.運算符重載可以改變操作數(shù)的個數(shù)。

B.運算符重載可以改變優(yōu)先級。

C.運算符重載可以改變結(jié)合性。

D.運算符重載不可以改變語法結(jié)構(gòu)。

答案:D。

6.運算符重載函數(shù)是()

。

A.成員函數(shù)。

B.友元函數(shù)。

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

D.帶默認(rèn)參數(shù)的函數(shù)。

答案:A、B。

7.關(guān)于動態(tài)聯(lián)編的下列描述中,

()是錯誤的。

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

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

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

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

答案:D。

8.關(guān)于虛函數(shù)的描述中,

()是正確的。

A.虛函數(shù)是一個static類型的成員函數(shù)。

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

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

說明虛函數(shù)。

D.派生類的虛函數(shù)與基類的虛函數(shù)具有不同的參數(shù)個數(shù)和類

型。

答案:C。

9.關(guān)于純虛函數(shù)和抽象類的描述中,

()是錯誤的。

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

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

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

象類。

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

給出。

答案:C。

10.下列描述中,

()是抽象類的特性。

A.可以說明虛函數(shù)。

B.可以進(jìn)行構(gòu)造函數(shù)重載。

C.可以定義友元函數(shù)。

D.不能說明其對象。

答案:D。

二、判斷下列描述的正確性。

1.函數(shù)的參數(shù)個數(shù)和類型都相同,只是返回值不同,這不是重

載函數(shù)。

(正確)

2.重載函數(shù)可以帶有默認(rèn)值參數(shù),但是要注意二義性。

(正確)

3.多數(shù)運算符可以重載,個別運算符不能重載,運算符重載是

通過函數(shù)定義實現(xiàn)的。

(正確)

4.對每個可重載的運算符來講,它

溫馨提示

  • 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

提交評論