




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、、單項(xiàng)選擇題 ( 在每小題的四個(gè)備選答案中選出一個(gè)正確答案,并將其號(hào)碼填在題干的 括號(hào)內(nèi)。每小題 2 分,共 20 分 )1. 所謂數(shù)據(jù)封裝就是將一組數(shù)據(jù)和與這組數(shù)據(jù)有關(guān)操作組裝在一起,形成一個(gè)實(shí)體,這實(shí) 體也就是 ( )A. 類 B. 對(duì)象 C. 函數(shù)體 D. 數(shù)據(jù)塊2. 面向?qū)ο蟮某绦蛟O(shè)計(jì)語言必須具備的關(guān)鍵要素是 ( )A. 抽象和封裝 B. 抽象和多態(tài)性C. 抽象、封裝、繼承和多態(tài)性 D. 抽象、封裝和繼承性3. 類的構(gòu)造函數(shù)被自動(dòng)調(diào)用執(zhí)行的情況是在定義該類的 ( )A. 成員函數(shù)時(shí) B. 數(shù)據(jù)成員時(shí)C. 對(duì)象時(shí) D. 友元函數(shù)時(shí)4. 設(shè)有函數(shù)模板templateQ Sum(Qx,Qy)
2、return(x)+(y); 則下列語句中對(duì)該函數(shù)模板 錯(cuò)誤 的使用是 ( )A.Sum(10,2); B.Sum(5.0,6.7) ;C.Sum(15.2f,16.0f); D.Sum( AB , CD );5. 已知類 A 是類 B 的友元,類 B 是類 C 的友元,則 ( )A. 類 A 一定是類 C 的友元B. 類 C 一定是類 A 的友元C. 類 C 的成員函數(shù)可以訪問類 B 的對(duì)象的任何成員D. 類 A 的成員函數(shù)可以訪問類 B 的對(duì)象的任何成員6. 如果表達(dá)式 +i*k 中的“ + ”和“ * ”都是重載的友元運(yùn)算符,則采用運(yùn)算符函數(shù) 調(diào)用格式,該表達(dá)式還可表示為 ( )A.op
3、erator*(i.operator+(),k) B.operator*(operator+(i),k)C.i.operator+().operator*(k) D.k.operator*(operator+(i)7. 下列說法中正確的是 ( )A. 類定義中只能說明函數(shù)成員的函數(shù)頭,不能定義函數(shù)體B. 類中的函數(shù)成員可以在類體中定義,也可以在類體之外定義C. 類中的函數(shù)成員在類體之外定義時(shí)必須要與類聲明在同一文件中D. 在類體之外定義的函數(shù)成員不能操作該類的私有數(shù)據(jù)成員8. 若派生類的成員函數(shù)不能直接訪問基類中繼承來的某個(gè)成員,則該成員一定是基類中的 ( )A. 私有成員 B. 公有成員C.
4、 保護(hù)成員 D. 保護(hù)成員或私有成員9. 對(duì)基類和派生類的關(guān)系描述中, 錯(cuò)誤 的是 ( )A. 派生類是基類的具體化 B. 基類繼承了派生類的屬性C. 派生類是基類定義的延續(xù) D. 派生類是基類的特殊化10. 類 B 是類 A 的公有派生類,類 A 和類 B 中都定義了虛函數(shù) func(),p 是一個(gè)指向類 A 對(duì)象的指針,則 p-A:func() 將 ( )A. 調(diào)用類 A 中的函數(shù) func()B. 調(diào)用類 B 中的函數(shù) func()C. 根據(jù) p 所指的對(duì)象類型而確定調(diào)用類 A 中或類 B 中的函數(shù) func()D. 既調(diào)用類 A 中函數(shù),也調(diào)用類 B 中的函數(shù)、填空題 ( 每小題 2
5、分,共 20 分 )11. 假定用戶沒有給一個(gè)名為 AB 的類定義析構(gòu)函數(shù),則系統(tǒng)自動(dòng)給出的缺省析構(gòu)函數(shù)定 義為 。12. 模板定義中標(biāo)識(shí)類型的參數(shù)必須用關(guān)鍵字 修飾。13. 表達(dá)式 counthex 還可表示為 。14. 通過 C+ 語言中的 機(jī)制,可以從現(xiàn)存類中構(gòu)建其子類。15. 要在調(diào)用虛函數(shù)的時(shí)候強(qiáng)制進(jìn)行靜態(tài)聯(lián)編,可以通過在調(diào)用中對(duì)虛函數(shù)加 實(shí)現(xiàn)。16. 封裝要求一個(gè)對(duì)象應(yīng)具備明確的功能,并具有 以便和其它對(duì)象相互作用。17. 在刪除一個(gè)動(dòng)態(tài)對(duì)象時(shí),將自動(dòng)調(diào)用該動(dòng)態(tài)對(duì)象所屬類的 函數(shù)。18. 靜態(tài)成員函數(shù)、友元函數(shù)、構(gòu)造函數(shù)和析構(gòu)函數(shù)中,不屬于成員函數(shù)的是 19. 在下面的類定義中,私
6、有成員有 。class Location int X,Y;protected:int zeroX,zerxY;int SetZero(intzeroX, intzeroY);private:int length,height;public:void init(int initX,int initY);int GetX();20. 類的私有成員只能被它的成員函數(shù)和 訪問。三、改錯(cuò)題 ( 每小題 2 分,共 10 分 )21. 此類定義有一處錯(cuò)誤,請(qǐng)指出錯(cuò)誤并改正。class ABCint a;public:ABC(int aa)a(aa);22. 下面程序通過調(diào)用函數(shù)模板實(shí)現(xiàn)計(jì)算兩個(gè)正整數(shù)的最大
7、公約數(shù), 把 main 函數(shù)中錯(cuò)誤找 出并改正過來。#includetemplateT gcd(Tx,Ty)while(x! =y)if(xy)x-=y;else y-=x;return x;void main()double d;cinad;coutgcd(a,d)endl;23. 指出下面程序中的錯(cuò)誤,并說明出錯(cuò)原因。#includeclass ConstFunpublic:void ConstFun()const int f5()constreturn 5;int Obj() return 45;int val;int f8();int ConstFun:f8()return val;v
8、oid main()const ConstFun s;int i=s.f5();cout Value= iendl;24. 指出下面程序中的錯(cuò)誤,并說明錯(cuò)誤原因。#includeclass Apublic:void fun()couta.funendl;class Bpublic:void fun()coutb.funendl;void gun()cout b.gun endl;class C:public A,public Bc.gu nen dl;private:int b;public:void gun()cout ;void main()c obj;obj.fun();obj.gun(
9、);25. 指出下面程序段中的錯(cuò)誤,并說明出錯(cuò)原因。class Location int X,Y;protected:int zeroX,zeroY;private: int length,height;public:float radius;void init(int initX,int initY)length=initX;height=initY;int GetX()return X;int GetY()return Y;int main()Location retangleA=25,20,3,5,6,7,3;return 0;四、完成程序題 ( 每小題 4 分,共 20 分 ) 根據(jù)題
10、目要求填空,完成程序。26. 在下面程序段橫線處填上適當(dāng)?shù)膬?nèi)容。class A int n;public:A(int nn=0):n(nn)if(n=0)a=0;else a=new int n / 定義析構(gòu)函數(shù),釋放動(dòng)態(tài)數(shù)組空間;27. 在下面程序橫線處填上適當(dāng)內(nèi)容,使程序執(zhí)行結(jié)果為:200_ _ 100程序如下:#include template Tf(Tx,Ty)if(sizeof(T)=)return x+y;elsereturn x*y;void main()cout f(10,20) - f(45.5,54.5)endl;28. 下面程序三次調(diào)用同一函數(shù) sum ,在橫線處填上適當(dāng)
11、內(nèi)容,使輸出結(jié)果為:S=2S=5S=9程序如下:#includevoid sum(int i)static int s;cout S= sendl;void main (void)int i;for (i=0;)sum(i);29. 請(qǐng)?jiān)谙旅鏅M線處填上適當(dāng)?shù)膬?nèi)容,使程序的輸出為:7.000007程序如下:#includeviod main()double x=7;coutx;coutendlx;30. 在下面程序橫線處填上適當(dāng)?shù)膬?nèi)容,使該程序輸出結(jié)果為:Creating Bend of Bend of A 程序如下:#includeclass Apublic:endl;A()cout end
12、of A ;calss B:public Apublic:B()B()cout end of B endl;void main()A*pa=new B;delete pa 五、程序分析題 ( 每小題 5 分,共 30 分 ) 給出下面各程序的輸出結(jié)果。31. 當(dāng)從鍵盤上輸入 1.5 10 時(shí),寫出下面程序的執(zhí)行結(jié)果。 #includevoid mian()int a,b,c;char ch;cinachbc;/ 從鍵盤上輸入 1.5 10 coutaendlchendlbendlc;輸出為:32. 寫出下面程序輸出結(jié)果。#includetemplatevoid f(T a 3 3 ,Tb 3
13、3 ,Tc 3 3 ) for(int i=0;i3;i+)for(int j=0;j3;j+)c i j =(T)0 for(int k=0;k3;k+)c i j +=a i k *b j k void main()int a 3 3 =1,2,3,4,5,6,7,b 3 3 ,c 3 3 =2,0,2,0,0,2;f(a,c,b);for(int i=0;i3;i+)for(int j=0,j3;j+)coutb : i : : j : ;coutendl;輸出為:33. 寫出下面程序的輸出結(jié)果。#includeclass FUNfriend ostream& operator (ost
14、ream&,FUN);fun;ostream& operator(ostream& os,FUN f) os.setf(ios:left);return os;void main()coutsetfill( * )setw(10)12345endl;coutfunsetw(10)54321endl;輸出為:34. 寫出下面程序的輸出結(jié)果。#includeclass Testprivate:static int val;int a;public:static int func();static void sfunc(Test &r);int Test:val=20;int Test:func()
15、val-;return val;void Test:sfunc(Test &r)r.a=25;cout Result3 =r.a;void main()cout Resultl= Test:func()endl;Test a;cout Result2= a.func();Test:sfunc(a);輸出為:35. 寫出下面程序輸出結(jié)果。# includeclass Apublic: endl;virtual void func()cout func in class A ;class Bpublic:virtual void func()cout func in class B endl;cl
16、ass C:public A, public Bpublic:void func()cout func in class C endl;void main()C c;A& pa=c;B& pb=c;C& pc=c;pa.func();pb.func();pv.func();輸出為:36. 寫出下面程序的輸出結(jié)果。# include class Locationpublic:int X,Y;void init(int initX,int initY);int GetX();int GetY();void Location:init (int initX,int initY)X=initX;Y=i
17、nitY;int Location:GetX()return X;int Location:GetY()return Y;void display(Location& rL)coutrL. GetX()ff ffrL.GetY()init(7,8);for (int i=0;i5;i+)display(*(rA+);輸出為:全國(guó) 2002年 10月高等教育自學(xué)考試面向?qū)ο蟪绦蛟O(shè)計(jì)參考答案參考答案一、單項(xiàng)選擇題(本大題共 lO 小題,每小題 2分:共 20 分)1.B 2.C 3.C 4.D 5.D 6.B 7.B 8.A 9.B 10.A二、填空題(本大題共 10 小題,每小題 2 分,共 2
18、0分)11. AB ()12. class (或 type name)13 cout,sctf ( ios: hex,ios: basefield)(或 coutsetf( ios:hex) ,或 cout (a, d)或把 gcd(a, b)改為 gcd (a, int (d)=23. 程序中第4行“ void ConstFun () ”錯(cuò)誤,因?yàn)槁暶鳂?gòu)造函數(shù)時(shí)不能指定返回類型。24. 第15行obj.fun();語句錯(cuò)誤,因?yàn)橛肅類的對(duì)象obj對(duì)函數(shù)fun ()的訪問是兩義的,應(yīng) 使用成員名限定來消除兩義性。25. location retangleA = 25 , 20, 3, 5, 6, 7, 3;語句錯(cuò)誤,因?yàn)閿?shù)據(jù)成員不都是公有成 員,不能用初始化列表初始化。四、完成程序題(本大題共5小題,每小題 4分,共 20 分)26. int *a;(2分)A()delete 口 a; (2 分)27. V class 1( 2 分)sizeof( double) (或 8 或其他等價(jià)形式)28.
溫馨提示
- 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. 人人文庫(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 銀行保證金流程管理規(guī)范
- 小金魚兒童課件
- 帕金森病人的護(hù)理常規(guī)
- 護(hù)理教學(xué)中的法律法規(guī)
- LED照明產(chǎn)品綠色環(huán)保采購(gòu)合同
- 上市公司股票抵押借款協(xié)議
- 綠色物流倉(cāng)儲(chǔ)庫(kù)房租賃與環(huán)保倉(cāng)儲(chǔ)解決方案合同
- 大班音樂《逛公園》
- 科研實(shí)驗(yàn)場(chǎng)地借用協(xié)議書模板
- 餐飲企業(yè)品牌加盟及經(jīng)營(yíng)管理合同范本
- 國(guó)開人力資源管理期末機(jī)考資料
- 中建八局施工組織設(shè)計(jì)(287P)
- 變電站防恐課件
- 會(huì)考地理綜合題答題模板+簡(jiǎn)答題歸納-2025年會(huì)考地理知識(shí)點(diǎn)梳理
- 國(guó)開《離散數(shù)學(xué)》形考任務(wù)1-3試題及答案
- 電動(dòng)車充電器知識(shí)培訓(xùn)
- 2025年互聯(lián)網(wǎng)營(yíng)銷師-直播銷售員競(jìng)賽考試題庫(kù)及答案
- 2024人教版新教材初中地理七年級(jí)下冊(cè)內(nèi)容解讀課件(深度)
- 社會(huì)體育指導(dǎo)與管理專業(yè)大學(xué)生職業(yè)生涯發(fā)展
- 反恐驗(yàn)廠管理手冊(cè)程序文件制度文件表單一整套
- 老舊小區(qū)改造、提升項(xiàng)目部與小區(qū)居民、單位協(xié)調(diào)方案
評(píng)論
0/150
提交評(píng)論