

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第1頁(yè)面向?qū)ο蟪绦蛟O(shè)計(jì) C+期末考試試卷(A)班級(jí):_ 姓名:_學(xué)號(hào):_分?jǐn)?shù):_題號(hào)-一一二二二-三四總分得分試卷說(shuō)明:本套試題共四個(gè)大題,全部題目都答在答題紙上,寫(xiě)在其他地方均無(wú)效。(答題紙?jiān)诒咎自嚲淼牡?10 頁(yè)上)一、選擇題(每小題 2 分,共 40 分)1、 C+是(C)0A. 面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言B. 面向過(guò)程的程序設(shè)計(jì)語(yǔ)言C. 既支持面向?qū)ο蟮某绦蛟O(shè)計(jì)又支持面向過(guò)程的程序設(shè)計(jì)的混合型語(yǔ)言D. 非結(jié)構(gòu)化的程序設(shè)計(jì)語(yǔ)言2、 面向?qū)ο蟪绦蛟O(shè)計(jì)思想的主要特征中不包括(D)oA.封裝性 B.多態(tài)性 C.繼承性 D.功能分解,逐步求精3、 若定義:string str;當(dāng)語(yǔ)句 cinstr;
2、執(zhí)行時(shí),從鍵盤(pán)輸入:Microsoft Visual Studio 6.0!所得的結(jié)果是 str= ( B )oA. Microsoft Visual Studio 6.0!B. MicrosoftC. Microsoft VisualD. Microsoft Visual Studio 6.04、 考慮下面的函數(shù)原型聲明:void testDefaulParam(i nt a,i nt b=7,char z=*);下面函數(shù)調(diào)用中,不合法的是(C)oA. testDefaulParam(5);B. testDefaulParam(5,8);C. testDefaulParam(5,#);D.
3、testDefaulParam(0,0,*);5、 下列語(yǔ)句中,將函數(shù) int sum(int x, int y)正確重載的是( C )。A. float sum(i nt x, int y);B. int sum(i nt a, int b);第2頁(yè)C. float sum(float x, float y);6 下列表示引用的方法中,(A )是正確的。已知:int a=1000;A. int &x=a;B. char &y;C. i nt &z=1000;D. float &t=&a;7、在一個(gè)函數(shù)中,要求通過(guò)函數(shù)來(lái)實(shí)現(xiàn)一種不太復(fù)雜的功能,并且要求加
4、快執(zhí)行 速度,選用(A )。A.內(nèi)聯(lián)函數(shù)B.重載函數(shù)C.遞歸調(diào)用D.嵌套調(diào)用8、 下列有關(guān) C+類的說(shuō)法中,不正確的是(D )。A.類是一種用戶自定義的數(shù)據(jù)類型B.只有類中的成員函數(shù)或類的友元函數(shù)才能存取類中的私有成員C. 在類中,如果不做特別說(shuō)明,所有成員的訪問(wèn)權(quán)限均為私有的D. 在類中,如果不做特別說(shuō)明,|所有成員的訪問(wèn)權(quán)限均為公用的9、 已知 X 類,貝 U 當(dāng)程序執(zhí)行到語(yǔ)句:X a|ray3;時(shí),調(diào)用了( D )次構(gòu)造函數(shù)。A. 0B. 1C. 2D. 310、下面說(shuō)法中,正確的是(B )A. 一個(gè)類只能定義一個(gè)構(gòu)造函數(shù),但可以定義多個(gè)析構(gòu)函數(shù)B. 一個(gè)類只能定義一個(gè)析構(gòu)函數(shù),但可以定
5、義多個(gè)構(gòu)造函數(shù)C. 構(gòu)造函數(shù)與析構(gòu)函數(shù)同名,只要名字前加了一個(gè)求反符號(hào)()D.構(gòu)造函數(shù)可以指定返回類型,而析構(gòu)函數(shù)不能指定任何返回類型,即使是 void 類型也不可以11、已知:print()函數(shù)是一個(gè)類的常成員函數(shù),它無(wú)返回值,下列表示中, ()是正確的。類型名 成員函數(shù)名 constA. void prin t( ) con st;C. void const prin t();12、下面描述中,表達(dá)錯(cuò)誤的是(D. double sum(i nt y, int x);B. const void print( );D. void prin t(c on st);B )第3頁(yè)A. 公用繼承時(shí)基類
6、中的 public 成員在派生類中仍是 public 的B. 公用繼承時(shí)基類中的 private 成員在派生類中仍是 private 的C. 公用繼承時(shí)基類中的 protected 成員在派生類中仍是 protected 的D. 私有繼承時(shí)基類中的 public 成員在派生類中是 private 的13、設(shè)置虛基類的目的是( B )。A.簡(jiǎn)化程序B.消除二義性C.提高運(yùn)行效率D.減少目標(biāo)代碼14、下面(B )的敘述不符合賦值兼容規(guī)則。A. 派生類的對(duì)象可以賦值給基類的對(duì)象B. 基類的對(duì)象可以賦值給派生類的對(duì)象 zC. 派生類的對(duì)象可以初始化基類的對(duì)象D. 派生類的對(duì)象的地址可以賦值給指向基類的
7、指針15、 關(guān)于虛函數(shù)的描述中,(C )是正確的。A. 虛函數(shù)是一個(gè) static 類型的成員函數(shù) uB. 虛函數(shù)是一個(gè)非成員函數(shù)C. 基類中說(shuō)明了虛函數(shù)后,派生類中與其對(duì)應(yīng)的函數(shù)可不必說(shuō)明為虛函數(shù)D. 派生類的虛函數(shù)與基類的虛函數(shù)具有不同的參數(shù)個(gè)數(shù)和類型16、下面關(guān)于友兀的描述中,錯(cuò)誤的是( D )oA. 友元函數(shù)可以訪問(wèn)該類的私有數(shù)據(jù)成員B. 一個(gè)類的友元類中的成員函數(shù)都是這個(gè)類的友元函數(shù)C. 友元可以提高程序的運(yùn)行效率D. 類與類之間的友元關(guān)系可以繼承17、下列關(guān)于靜態(tài)數(shù)據(jù)成員的說(shuō)法,不正確的是( C)oA. 類中定義的公用靜態(tài)數(shù)據(jù)成員,可以通過(guò)類的對(duì)象來(lái)訪問(wèn)B. 類中定義的所有靜態(tài)數(shù)據(jù)
8、成員,都必須在類外初始化C. 靜態(tài)數(shù)據(jù)成員不是所有對(duì)象所共用的D. 普通的成員函數(shù)可以直接訪問(wèn)類中的靜態(tài)數(shù)據(jù)成員不可以訪問(wèn)第4頁(yè)18、如果表達(dá)式+i*k 中的“ + ”和“ *”都是重載的友元運(yùn)算符,若采用運(yùn)算符函數(shù)調(diào)用格式,則表達(dá)式還可以表示為( B )oA. operator*(i.operator+(),k)B. operator*(operator+(i),k)第5頁(yè)二、填空題(前 14 個(gè)空,每空 1 分,后 3 個(gè)空,每空 2 分,共 20 分)1、 類和對(duì)象的關(guān)系可表述為:類是對(duì)象的 _抽象 _ , 而對(duì)象則是類的實(shí) 例。2、 靜態(tài)成員函數(shù)沒(méi)有隱含的 _this 指針 _ ,所以
9、,在 C+程序中,靜態(tài)成員函 數(shù)主要用來(lái)訪問(wèn)靜態(tài)數(shù)據(jù)成員,而不訪問(wèn)非靜態(tài)成員。3、 在圖 1 中,A,B,C,D,E,F(xiàn) 均是類,其中屬于單繼承的派生類有E ,屬于多繼承的派生類有D、F ,類 F 的基類有_A、B、C、D、E _ ,類 A 的派生類有D、F _ ??截悩?gòu)造函數(shù)聲明:Point(Point&)Point(constPoint&)析構(gòu)函數(shù)聲明:類名 如Person()常對(duì)象語(yǔ)法格式為:constclass_Type object_name 或 class_Type const object_name常弓丨用: constdata_type & refere
10、nce_name 常函數(shù): return_type function_name(formalparameters list) const 靜態(tài)數(shù)據(jù)成員: static datatype variablename 靜態(tài)函數(shù):static return_type Function_name(formal parameters list) 友元函數(shù): friendreturn_type function_name(formal parameters list)4、 如果只想保留公共基類的一個(gè)復(fù)制,就必須使用關(guān)鍵字 virtual_ 把這C. i.operator+().operator*(k)19、
11、下面對(duì)模板的聲明,正確的是(A. templateC. templatevclass T1, class T220、 下列的各類函數(shù)中,(C )D. k.operator*(operator+(i)C )。B. templatevclass T1, T2D. templatevclass T1; class T2不是類的成員函數(shù)C.友元函數(shù)D.復(fù)F圖 1 類的繼承層次圖第6頁(yè)個(gè)公共基類聲明為虛基類。5、 從實(shí)現(xiàn)的角度來(lái)講,多態(tài)性可以劃分為兩類:靜態(tài)多態(tài)性_和動(dòng)態(tài)多態(tài)性性_ 。6 如果一個(gè)類包含一個(gè)或多個(gè)純虛函數(shù),則該類稱為_(kāi)抽象性 _。7、若要把 void fun()定義為類 A 的友元 函數(shù)
12、,則應(yīng)在 類 A 的定義中加入語(yǔ) 句friend void fun(A &a)_。8、 列出 C+中的兩種代碼復(fù)用方式: _ 繼承 _ 和組合或模板 。9、 析構(gòu)函數(shù)的作用在對(duì)象被系統(tǒng)釋放之前做一些內(nèi)存清理工作_。10、 假定 A 是一個(gè)類名,則該類的拷貝構(gòu)造函數(shù)的原型說(shuō)明語(yǔ)句為:_A_A( constA&) _ 。11、 后置自增運(yùn)算符“ + ”重載為類的成員函數(shù)(設(shè)類名為 A)的形式為:Aoperator+(int)。三、閱讀下面 4 個(gè)程序,寫(xiě)出程序運(yùn)行時(shí)輸出的結(jié)果。(共 13 分)1、#in cludeviostream using n amespace std;voi
13、d fun(int &a, int &b)in t p;p=a; a=b; b=p;void excha nge(i nt &a, int &b, int &c) if( ab ) fun (a, b);if( ac ) fun(a, c);if( bc ) fun(b, c);int main() int a=12,b=89,c=56; exchange(a, b, c); couta=a,b=b,c=cendl;第 7 頁(yè)return 0;a=89,b=56,c=122、#include using namespace std;class A pub
14、lic:A( ) cout A; ;class B public:B( ) cout B; ;class C: public A public:C( ) cout C; Private:B b;int main ( ) C obj; ABCreturn 0;第 8 頁(yè)3、#include using namespace std;class Apublic:A()coutA:A() called.n;virtual A()coutA:A() called.n;class B: public Apublic:B(int i) coutB:B() called.n;buf=new chari;vir
15、tual B() delete buf;coutB:B() called.n;private:char *buf;int main() A *a=new B(15);delete a;return 0;4、A:A() called.B:B() called.第 9 頁(yè)#include using namespace std;class Apublic:void f()coutCall As function f()endl;class Bpublic:void f() coutCall Bs function f()endl;void g() coutCall Bs function g()e
16、ndl;class C: public A, public Bpublic:void g()coutCall Cs function g()endl;int main() C cc;cc.B:f();cc.B:g();cc.g();Call Bs function f()Call Bs function g()Call Cs function g()return 0;第 10 頁(yè)四、編程題( 27 分)1、 (10 分)已知復(fù)數(shù)類 Complex 的聲明如下:class Complexpublic:Complex();/無(wú)參構(gòu)造函數(shù)Complex(double );/轉(zhuǎn)換構(gòu)造函數(shù)Complex
17、(double, double); /有兩個(gè)形參的構(gòu)造函數(shù)friend Complex operator+(Complex&, Complex&);/對(duì)“ +”運(yùn)算符進(jìn)行重載friend ostream& operator(ostream&, Complex&); /對(duì)“(istream&, Complex&); /對(duì)“”運(yùn)算符進(jìn)行重載 private:double real,imag;要求:( 1)寫(xiě)出該類的所有構(gòu)造函數(shù)的類外定義代碼。( 2)寫(xiě)出對(duì)運(yùn)算符“ +”、“”進(jìn)行重載的運(yùn)算符重載函數(shù)的定義。2、(17 分)下列 Shape 類
18、是一個(gè)表示形狀的抽象類, area()為求圖形面積的函數(shù), total() 則是一個(gè)通用的用以求不同形狀的圖形面積總和的函數(shù)。class Shape public:virtual double area()=0;double total(Shape *s , int n) double sum=0.0;for(int i=0; iarea( );return sum;第 11 頁(yè)要求:(1 1從Shape 類派生圓類(Circle)、正方形類(Square),圓類新增數(shù)據(jù)成員半 徑(radius),正方形類新增數(shù)據(jù)成員邊長(zhǎng)(a),圓類和正方形類都有構(gòu)造函數(shù),修 改、顯示數(shù)據(jù)成員值的函數(shù),求面積
19、函數(shù)。(2)寫(xiě)出 main()函數(shù),計(jì)算半徑為 5.5 的圓和邊長(zhǎng)為 9.9 的正方形的面積和(必須通過(guò)調(diào)用 total 函數(shù)計(jì)算)。第 11 頁(yè)面向?qū)ο蟪绦蛟O(shè)計(jì) C+期末考試試卷(A )標(biāo)準(zhǔn)答案班級(jí):_ 姓名:_ 學(xué)號(hào):_分?jǐn)?shù):_題號(hào)一一一二二二-三四總分得分一、單項(xiàng)選擇題(每小題1-5. C D B C C11-15. A B B B C二、填空題(前 14 個(gè)空,2 分,共 40 分)6-10. A A D D B16-20. D C B C C每空 1 分,實(shí)例后 3 個(gè)空,每空 2 分,共 20 分)1.抽象2 .this指針3.ED、FA、B、C、D ED、F4.virtual5靜
20、態(tài)多態(tài)性動(dòng)態(tài)多態(tài)性6.抽象類7.frie nd void fun(A &a)8.繼承組合或模板9.在對(duì)象被系統(tǒng)釋放之前做一些內(nèi)存清理工作10. A(const A&)11. A operator+(i nt)三、閱讀程序(13 分)1、a=89,b=56,c=122、ABC3、A:A() called.B:B() called.B:B() called.第 13 頁(yè)A:A() called.4、Call Bs function f()Call Bs function g()Call Cs function g()四、編程題(共 27 分)1、(10 分) Complex:Complex()real=0;imag=0; Complex:Complex(double r)real=r;Complex:Complex(double r,double i)real=
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2031年中國(guó)保鮮內(nèi)包裝塑料制品行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2030年中國(guó)調(diào)風(fēng)閥數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025至2030年中國(guó)花式編織機(jī)數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 起重設(shè)備基礎(chǔ)施工方案
- 2025至2030年中國(guó)主動(dòng)門(mén)鉸鏈數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 高中信息技術(shù)選修3教學(xué)設(shè)計(jì)-4.1 因特網(wǎng)上的信息檢索1-浙教版
- 第三單元 教學(xué)設(shè)計(jì)-2024-2025學(xué)年語(yǔ)文四年級(jí)下冊(cè)統(tǒng)編版
- 第20課 正面戰(zhàn)場(chǎng)的抗戰(zhàn)(教學(xué)設(shè)計(jì))-2024-2025學(xué)年八年級(jí)歷史上冊(cè)素養(yǎng)提升教學(xué)設(shè)計(jì)(統(tǒng)編版)
- 開(kāi)展重復(fù)性隱患和習(xí)慣性違章行為整治行動(dòng)方案
- 18 威尼斯的小艇教學(xué)設(shè)計(jì)-2023-2024學(xué)年五年級(jí)下冊(cè)語(yǔ)文統(tǒng)編版
- (正式版)JBT 10437-2024 電線電纜用可交聯(lián)聚乙烯絕緣料
- 【S城投公司償債能力存在的問(wèn)題及優(yōu)化建議探析8000字(論文)】
- 品質(zhì)部質(zhì)量目標(biāo)
- 2024屆廣東省深圳市中考物理模擬試卷(一模)(附答案)
- 前庭功能鍛煉科普知識(shí)講座
- 信永中和線上測(cè)評(píng)題庫(kù)
- 供應(yīng)鏈戰(zhàn)略布局與區(qū)域拓展案例
- 上海話培訓(xùn)課件
- 注塑車(chē)間績(jī)效考核方案
- 初中英語(yǔ)閱讀理解專項(xiàng)練習(xí)26篇(含答案)
- LS/T 1234-2023植物油儲(chǔ)存品質(zhì)判定規(guī)則
評(píng)論
0/150
提交評(píng)論