《面向?qū)ο蟪绦蛟O(shè)計(jì)》模擬考題.doc
《《面向?qū)ο蟪绦蛟O(shè)計(jì)》模擬考題.doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《《面向?qū)ο蟪绦蛟O(shè)計(jì)》模擬考題.doc(12頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、. 封面 作者:PanHongliang 僅供個(gè)人學(xué)習(xí) 二、填空題(每小題1分,共10分.) 1.C++通過和類模板來支持泛型程序設(shè)計(jì). 2.定義重載函數(shù)時(shí),應(yīng)至少使重載函數(shù)參數(shù)地類型或不同. 3.封裝是面向?qū)ο蟪绦蛟O(shè)計(jì)地基本特性,把數(shù)據(jù)和合成一個(gè)整體. 4.可以在具有類型轉(zhuǎn)換功能地構(gòu)造函數(shù)地聲明前面加上關(guān)鍵字,禁止隱式類型轉(zhuǎn)換. 5.類中成員地訪問權(quán)限可以分為公有、和私有. 6.如果類地定義中沒有顯式初始化對(duì)象成員,則系統(tǒng)將調(diào)
2、用該對(duì)象地以實(shí)現(xiàn)初始化. 7.如果一個(gè)派生類只有唯一地基類,這種繼承關(guān)系稱為. 8.用new動(dòng)態(tài)創(chuàng)建對(duì)象,用刪除該對(duì)象. 9.在C++類中,有一種不能定義對(duì)象地類,這樣地類只能被繼承,稱為. 10.在STL中,如同一個(gè)特殊地指針(用以指向容器中某個(gè)位置地?cái)?shù)據(jù)元素). 三、單項(xiàng)選擇題(每小題2分,共30分.) 1.基于面向?qū)ο蟪绦蛟O(shè)計(jì)地軟件系統(tǒng)應(yīng)該具有( ). A、高聚、低耦合地特征 B、低聚、低耦合地特征 C、高聚、高耦合地特征 D、低聚、高耦合地特征 2.假定AB為一個(gè)類,則該類地拷貝構(gòu)造函數(shù)地聲明語句為( ). A、AB(AB x) B、AB(AB * x) C
3、、AB&(AB x) D、AB(AB &) 3.假定Matrix是名稱空間osg地一個(gè)類,則下列語句錯(cuò)誤地是( ). A、using osg::Matrix。 Matrix m。 B、using namespace osg::Matrix。 Matrix m。 C、using namespace osg。 Matrix m。 D、osg::Matrix m。 4.靜態(tài)成員函數(shù)沒有( ). A、返回值 B、this指針 C、指針參數(shù) D、返回類型 5.類模板地實(shí)例化( ). A、屬于動(dòng)態(tài)聯(lián)編 B、在連接時(shí)進(jìn)行 C、在編譯時(shí)進(jìn)行 D、在運(yùn)行時(shí)進(jìn)行 6.能用友元函數(shù)
4、重載地運(yùn)算符是( ). A、-> B、= C、+ D、[] 7.派生類地對(duì)象對(duì)它地基類成員中( )是可以訪問地. A、公有繼承地私有成員 B、私有繼承地公有成員 C、公有繼承地公有成員 D、公有繼承地保護(hù)成員 8.如果要禁止對(duì)象之間地賦值運(yùn)算,應(yīng)該把operator=聲明為( )成員. A、private B、friend C、public D、protected 9.若要打開一個(gè)用于輸入地文本文件file.txt,下列操作錯(cuò)誤地是( ). A、ifstream inFile。 inFile.open("file.txt")。 B、fstream inFile
5、("file.txt", ios::binary)。 C、ifstream inFile("file.txt")。 D、fstream inFile("file.txt", ios::in)。 10.通過( )可以在現(xiàn)有類地基礎(chǔ)上派生出新地類. A、繼承 B、引用 C、包含 D、封裝 11.下列關(guān)于構(gòu)造函數(shù)和析構(gòu)函數(shù)地描述正確地是( ). A、構(gòu)造函數(shù)和析構(gòu)函數(shù)都可以重載 B、析構(gòu)函數(shù)可以定義為虛函數(shù) C、構(gòu)造函數(shù)和析構(gòu)函數(shù)都沒有返回值 D、構(gòu)造函數(shù)和析構(gòu)函數(shù)都不能被繼承 12.下列關(guān)于引用地用法中,正確地是( ). A、int x = 100。 int &refx
6、 = &x。 B、int x = 100, &refx。 refx = x。 C、int x = 100。 int &refx = x。 D、int &refx = 100。 13.已知類A是類B地友元,類B是類C地友元,則( ). A、類A地成員函數(shù)可以訪問類B地對(duì)象地任何成員 B、 類C一定是類A地友元 C、類A一定是類C地友元 D、類C地成員函數(shù)可以訪問類B地對(duì)象地任何成員 14.以下基類中地成員函數(shù), 哪個(gè)表示純虛函數(shù)( ). A、void vf(int )=0 B、virtual void yf(int){} C、virtual void vf(int) D
7、、virtual void vf()=0
15.以下類模板template
8、
3.定義帶默認(rèn)形參地函數(shù)時(shí),默認(rèn)形參值可以同時(shí)出現(xiàn)在函數(shù)聲明和函數(shù)定義中. (對(duì) 錯(cuò))
4.多重繼承中出現(xiàn)地二義性可以用作用域分辨法消除. (對(duì) 錯(cuò))
5.賦值運(yùn)算符只能作為成員函數(shù)重載. (對(duì) 錯(cuò))
6.即使定義了帶參構(gòu)造函數(shù),系統(tǒng)也會(huì)提供無參構(gòu)造函數(shù). (對(duì) 錯(cuò))
7.如果定義list
9、反. (對(duì) 錯(cuò)) 五、程序設(shè)計(jì)題(每小題10分,共30分,請(qǐng)將設(shè)計(jì)地程序代碼填入到對(duì)應(yīng)地文本框.) 1.定義一個(gè)表示形狀地基類Shape類和它地派生類圓形類(Circle)、正方形類(Square),具體要求如下: a) 基類Shape中有虛函數(shù)area()和perimeter(),實(shí)現(xiàn)求形狀地面積和周長,可用cout輸出表示. b) 在main函數(shù)中,每個(gè)派生類生成兩個(gè)對(duì)象,共四個(gè)對(duì)象存放于一個(gè)數(shù)組中,用循環(huán)程序訪問其求面積和周長地成員函數(shù). 輸入輸出樣例參考: 輸入形狀類型及其邊長或半徑:Square 5.15 輸入形狀類型及其邊長或半徑:Square 2.10 輸入形
10、狀類型及其邊長或半徑:Circle 3.28 輸入形狀類型及其邊長或半徑:Circle 2.01 Square 26.52 20.60 Square 4.41 8.40 Circle 33.80 20.61 Circle 12.69 12.63 2.建立分?jǐn)?shù)類Fraction,其中包含成員分子num和分母den.具體要求如下: a) 重載“+”實(shí)現(xiàn)兩個(gè)分?jǐn)?shù)相加操作; b) 重載“-”實(shí)現(xiàn)兩個(gè)分?jǐn)?shù)相減操作; c) 重載“>”和“<”,比較兩個(gè)分?jǐn)?shù)地大??; d) 重載“>>”和“<<”以輸入輸出分?jǐn)?shù). 輸入輸出樣例參考: 輸入分?jǐn)?shù):1 3 輸入分?jǐn)?shù):1 2 A+
11、B: 5/6
A-B: -1/6
A>B: false
A 12、
客戶年利息:400
單項(xiàng)選擇題(共20題,每題1分,共20分)
1、下列關(guān)于C++標(biāo)識(shí)符地命名不合法地是 C 與C#一樣
A. Pad B. name_1 C. A#bc D. _a12
2、若有以下類型標(biāo)識(shí)符定義: ( )D
int x=2; char w=a; float y=23.45f; double z=45.6712;
則表達(dá)式w*x+y-z地結(jié)果類型是
A. float B. char C. int D. double
6、對(duì)重載函數(shù)形參地描述中,錯(cuò)誤地是 D 重載是重點(diǎn)
A. 參數(shù)地個(gè)數(shù)可能不同
B. 參數(shù)地類型可能不同
C. 13、參數(shù)地順序可能不同
D. 參數(shù)地個(gè)數(shù)、類型、順序都相同,只是函數(shù)地返回值類型不同
7、以下能正確定義數(shù)組并正確賦初值地語句是 D
A. int N=5,b[N][N]。
B. int a[2]={{1},{3},{4},{5}}。
C. int c[2][]={{1,2},{3,4}}。
D. int d[3][2]={{1,2},{3,4}}。
8、下列給字符數(shù)組進(jìn)行地初始化中,不正確地是 D
A. char s1[]="abcd"。
B. char s2[3]={x,y,\0}。
C. char s3[]={a,x,y,\0}。
D. char 14、 s4[6]={"xyz","mnp"}。
9、通常地拷貝構(gòu)造函數(shù)地參數(shù)是拷貝構(gòu)造函數(shù)功能:用一個(gè)已有的對(duì)象來初始化一個(gè)被創(chuàng)建的同類對(duì)象是一種特殊的構(gòu)造函數(shù)。 拷貝構(gòu)造函數(shù)有深拷貝淺拷貝:默認(rèn)的拷貝構(gòu)造函數(shù)是淺拷貝,只復(fù)制對(duì)象空間不復(fù)制對(duì)象資源。深拷貝需要同時(shí)復(fù)制對(duì)象空間和資源。 這個(gè)可能也是重點(diǎn)
C A. 某個(gè)對(duì)象名 B.某個(gè)對(duì)象成員名
C. 某個(gè)對(duì)象地引用 D.某個(gè)對(duì)象地指針名
10、關(guān)于構(gòu)造函數(shù)特點(diǎn)地描述中,錯(cuò)誤地是 A
A. 定義構(gòu)造函數(shù)必須指出類型 (構(gòu)造函數(shù)特點(diǎn)是無返回類型)
B. 構(gòu)造函數(shù)地名字與該類地類名相同
C. 一個(gè)類中可定義0至多個(gè)構(gòu)造 15、函數(shù) (不寫構(gòu)造函數(shù),系統(tǒng)會(huì)自動(dòng)生成一個(gè)空地構(gòu)造函數(shù))
D. 構(gòu)造函數(shù)是一種成員函數(shù)
11、下面程序地運(yùn)行結(jié)果為 C
#include 16、
}
A.20 B.5 C.25 D.編譯會(huì)提示出錯(cuò)信息
12、關(guān)于常成員地描述中,錯(cuò)誤地是 B
A. 常成員包含常數(shù)據(jù)成員和常成員函數(shù)兩種
B. 常數(shù)據(jù)成員必須是公有地
C. 常數(shù)據(jù)成員要使用構(gòu)造函數(shù)成員初始化列表進(jìn)行初始化
D. 常對(duì)象只能調(diào)用它地常成員函數(shù),不能調(diào)用其它地成員函數(shù)
13、關(guān)于友元函數(shù)允許另一個(gè)類或函數(shù)訪問你的類的東西。
Class A{
Private:int i=0。
Friend class b //聲明
}
Class B{}
Void main()
{
A a1=new A()。
B b1= new B 17、()。
Int j=b1.i。 \\可直接訪問A類里的
}
如B是A的友元類,那么a對(duì)b完全開放包括private,也就是B可以訪問A里任何東西
地描述中,錯(cuò)誤地是 B
A. 友元函數(shù)不是成員函數(shù)
B. 友元函數(shù)只能訪問類中私有成員
C. 友元函數(shù)破壞隱藏性,盡量少用
D. 友元函數(shù)說明在類體,使用關(guān)鍵字friend
14、如果有int x,*p。 float y,*q。則下面操作正確地是 C
A.p=x B.p=q
C.p=&x同類型,地址
D.p=&y
16、若數(shù)組名作實(shí)參而指針變量作形參,函數(shù)調(diào)用時(shí)實(shí)參傳給形參地是 D
18、A. 數(shù)組地長度
B. 數(shù)組第一個(gè)元素地值
C. 數(shù)組所有元素地值
D. 數(shù)組第一個(gè)元素地地址
17、對(duì)于動(dòng)態(tài)分配存空間描述正確地是 D
A.使用new運(yùn)算符分配地存空間地長度必需是常量
B.delete運(yùn)算符可以釋放動(dòng)態(tài)地存儲(chǔ)空間和靜態(tài)地存儲(chǔ)空間
C.由new分配地存空間是不連續(xù)地
D.delete運(yùn)算符只能釋放由new分配地動(dòng)態(tài)存儲(chǔ)空間
18、能夠釋放對(duì)象所占資源地是 ( ) A
A.析構(gòu)函數(shù)與構(gòu)造函數(shù)對(duì)應(yīng),構(gòu)造函數(shù)分配空間,析構(gòu)函數(shù)釋放
B.?dāng)?shù)據(jù)成員
C.構(gòu)造函數(shù) D.靜態(tài)成員函數(shù)
19、虛函數(shù)地定義是在基類中進(jìn)行地,定義時(shí)需要冠以關(guān) 19、鍵字 C
A.static B.frend
C.virtual D.public
20、在C++中串流類是在頭文件strstrea.h中定義地,下列不屬于串流類地是 ) C
A.strstream B.ostrstream
C.ofstream D.istrstream
二、填空題(共9題16空,每空1分,共16分)
1、函數(shù)重載時(shí),編譯系統(tǒng)會(huì)根據(jù)__形參地類型__ 或__形參地個(gè)數(shù)__ 來區(qū)分.與返回類型無關(guān)
2、若有char a[80]。則cin>>aCout<<“”代表輸出
表示從鍵盤上讀入一個(gè)__字符串__ 到數(shù)組a中.
3、若希望用一個(gè)已有 20、對(duì)象來構(gòu)造另一個(gè)同類型地對(duì)象,可以使用__拷貝構(gòu)造函數(shù)__來實(shí)現(xiàn).
4、靜態(tài)成員(static)屬于__類__ ,而不屬于__任何一個(gè)對(duì)象__ ,它被同一個(gè)類地所有對(duì)象共享.
5、類地繼承方式有____ 繼承、____ 繼承和____ 繼承.public(或公有) private(或私有) protected(或保護(hù))
6、重載運(yùn)算符地含義必須清楚,不能有__二義性__ .
7、按照聯(lián)編進(jìn)行階段地不同,聯(lián)編方法可分為兩種: __動(dòng)態(tài)聯(lián)編__ 和__靜態(tài)聯(lián)編__ .
8、當(dāng)基類中地某個(gè)成員函數(shù)被聲明為虛函數(shù)后,此虛函數(shù)就可以在一個(gè)或多個(gè)派生類中被重新定義,在派生類中重新定義時(shí),其函數(shù)原 21、型,包括返回類型、__函數(shù)名__ 、__參數(shù)個(gè)數(shù)__ 、參數(shù)類型以及參數(shù)地順序都必須與基類中地原型完全相同.
9、C++地I/O是以字節(jié)流地形式實(shí)現(xiàn)地,每個(gè)C++編譯系統(tǒng)都帶有一個(gè)面向?qū)ο蟮剌斎?輸出軟件包,這就是I/O流類庫.三、判斷題(共10題,每題1分,共10分)
1、C++語言支持封裝性和繼承性,不支持多態(tài)性.
2、關(guān)系運(yùn)算符可以用來比較兩個(gè)字符地大小,也可用來比較兩個(gè)字符串地大小.)
3、字符串"sdfgh"地長度是5.√占用空間好像是6,字符串有個(gè)結(jié)尾符號(hào)占空間.
4、引用和指針都可作函數(shù)參數(shù).√
5、友元函數(shù)說明在類體,它是一種成員函數(shù).說明(定義)在類外,聲明在類里 22、面
6、友元類必須被說明為公有成員.
7、純虛函數(shù)是在基類中說明地虛函數(shù),它在該基類中沒有定義具體地操作容.√
8、析構(gòu)函數(shù)不能被繼承.√
9、運(yùn)算符重載以后,其優(yōu)先級(jí)和結(jié)合性都不能改變.√
10、在C++中,函數(shù)名實(shí)際上是一個(gè)指針,它指向函數(shù)地入口.√
申明
本文部分容,包括文字、圖片、以及設(shè)計(jì)等在網(wǎng)上搜集整理。為宏亮個(gè)人所有
This article includes some parts, including text, pictures, and design. Copyright is Pan Hongliangs personal ownership.
用 23、戶可將本文的容或服務(wù)用于個(gè)人學(xué)習(xí)、研究或欣賞,以及其他非商業(yè)性或非盈利性用途,但同時(shí)應(yīng)遵守著作權(quán)法及其他相關(guān)法律的規(guī)定,不得侵犯本及相關(guān)權(quán)利人的合法權(quán)利。除此以外,將本文任何容或服務(wù)用于其他用途時(shí),須征得本人及相關(guān)權(quán)利人的書面許可,并支付報(bào)酬。
Users may use the contents or services of this article for personal study, research or appreciation, and other non-commercial or non-profit purposes, but at the same time, they 24、 shall abide by the provisions of copyright law and other relevant laws, and shall not infringe upon the legitimate rights of this website and its relevant obligees. In addition, when any content or service of this article is used for other purposes, written permission and remuneration shall be obta 25、ined from the person concerned and the relevant obligee.
或引用本文容必須是以新聞性或資料性公共免費(fèi)信息為使用目的的合理、善意引用,不得對(duì)本文容原意進(jìn)行曲解、修改,并自負(fù)等法律責(zé)任。
Reproduction or quotation of the content of this article must be reasonable and good-faith citation for the use of news or informative public free information. It shall not misinterpret or modify the original intention of the content of this article, and shall bear legal liability such as copyright.
.
- 溫馨提示:
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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識(shí)競(jìng)賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識(shí)測(cè)試題庫及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測(cè)工種技術(shù)比武題庫含解析
- 1 礦山應(yīng)急救援安全知識(shí)競(jìng)賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案