




下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、面向?qū)ο缶幊碳夹g(shù)試卷注: 1)請(qǐng)將答案寫(xiě)在答題紙上,寫(xiě)在試卷上不算分。答題紙?jiān)谠嚲淼淖詈箜?yè)。2)交卷時(shí) , 試卷和答題紙一起交。一、單選題 ( 每小題 1.5 分,共 30 分)1. C+ 中,以下有關(guān)構(gòu)造函數(shù)的敘述不正確的是_。A. 構(gòu)造函數(shù)名必須和類名一致B.構(gòu)造函數(shù)在定義對(duì)象時(shí)自動(dòng)執(zhí)行C. 構(gòu)造函數(shù)無(wú)任何函數(shù)類型D. 在一個(gè)類中構(gòu)造函數(shù)有且僅有一個(gè)2以下敘述不正確的是_。A. 在類的定義中,通常是成員變量描述對(duì)象的屬性;用成員函數(shù)描述對(duì)象的行為B. 類的一個(gè)成員只能具有一種訪問(wèn)控制屬性C. 構(gòu)造函數(shù)和析構(gòu)函數(shù)是特殊的成員函數(shù),因此不允許重載D. 通過(guò)對(duì)象只能訪問(wèn)類的公有成員3. 以下關(guān)于
2、虛函數(shù)的敘述不正確的是_ 。A. 虛函數(shù)屬于成員函數(shù)B. 虛函數(shù)不允許說(shuō)明成靜態(tài)的C. 凡是虛函數(shù)必須用virtual說(shuō)明D. 虛函數(shù)可以被繼承4. cout 是 I0流庫(kù)預(yù)定義的_ 。A類B. 對(duì)象C. 包含文件D. 常量5面向?qū)ο蟪绦蛟O(shè)計(jì)中的數(shù)據(jù)隱藏指的是_ 。A輸入數(shù)據(jù)必須輸入保密口令B 數(shù)據(jù)經(jīng)過(guò)加密處理C. 對(duì)象內(nèi)部數(shù)據(jù)結(jié)構(gòu)上建有防火墻D對(duì)象內(nèi)部數(shù)據(jù)結(jié)構(gòu)的不可訪問(wèn)性6拷貝(復(fù)制)構(gòu)造函數(shù)的作用是_ 。A進(jìn)行數(shù)據(jù)類型的轉(zhuǎn)換B 用對(duì)象調(diào)用成員函數(shù)C用對(duì)象初始化對(duì)象D用一般類型的數(shù)據(jù)初始化對(duì)象7. 下列不是描述類的成員函數(shù)的是_ 。A. 構(gòu)造函數(shù)B. 析構(gòu)函數(shù)C. 友元函數(shù)D. 拷貝構(gòu)造函數(shù)
3、8. 如果類 A 被說(shuō)明成類 B 的友元,則 _ 。A. 類 A 的成員即類B 的成員C. 類 A 的成員函數(shù)不得訪問(wèn)類B 的成員B. 類 B 的成員即類D. 類 B 不一定是類A 的成員A 的友元9.對(duì)于任何一個(gè)類,析構(gòu)函數(shù)最多有_個(gè)。A. 0B. 1C. 2D. n10. 下列特性中, C與 C+共有的是 _ 。A. 繼承B. 封裝C. 多態(tài)性D. 函數(shù)定義不能嵌套11.在公有繼承的情況下,基類公有和保護(hù)成員在派生類中的訪問(wèn)權(quán)限A. 受限制B.保持不變C. 受保護(hù)D. 不受保護(hù)_。12. 通過(guò) _ 調(diào)用虛函數(shù)時(shí),采用動(dòng)態(tài)束定。A.對(duì)象指針B. 對(duì)象名C. 成員名限定D. 派生類名13. C
4、+類體系中,不能被派生類繼承的有_ 。A. 成員轉(zhuǎn)換函數(shù)B. 構(gòu)造函數(shù)C. 虛函數(shù)D. 靜態(tài)成員函數(shù)14.假定 ab 為一個(gè)類,則執(zhí)行ab x ; 語(yǔ)句時(shí)將自動(dòng)調(diào)用該類的_ 。A. 有參構(gòu)造函數(shù)B. 無(wú)參構(gòu)造函數(shù)C. 拷貝構(gòu)造函數(shù)D. 賦值構(gòu)造函數(shù)15.靜態(tài)成員函數(shù)不能說(shuō)明為_(kāi)。A. 整型函數(shù)B. 浮點(diǎn)函數(shù)C. 虛函數(shù)D. 字符型函數(shù)16.在 C+ 中,數(shù)據(jù)封裝要解決的問(wèn)題是_ 。A.數(shù)據(jù)規(guī)范化排列B. 數(shù)據(jù)高速轉(zhuǎn)換C.避免數(shù)據(jù)丟失D. 保證數(shù)據(jù)完整性17關(guān)于友元函數(shù)的描述中,錯(cuò)誤的是_。A. 友元函數(shù)不是成員函數(shù)B. 友元函數(shù)只能訪問(wèn)類中私有成員C. 友元函數(shù)破壞隱藏性,盡量少用D. 友元函
5、數(shù)說(shuō)明在類體內(nèi),使用關(guān)鍵字friend18. 實(shí)現(xiàn)運(yùn)行時(shí)的多態(tài)性用 _ 。19. 關(guān)于 new 和 new 運(yùn)算符的下列描述中, _ 是錯(cuò)誤的。A 它可以用來(lái)動(dòng)態(tài)創(chuàng)建對(duì)象和對(duì)象數(shù)組;B使用它創(chuàng)建的對(duì)象或?qū)ο髷?shù)組可以使用運(yùn)算符delete和delete刪除;C使用它創(chuàng)建對(duì)象時(shí)要調(diào)用構(gòu)造函數(shù);D使用它創(chuàng)建對(duì)象數(shù)組時(shí)必須指定初始值;20下列關(guān)于虛函數(shù)的說(shuō)明中,正確的是A 從虛基類繼承的函數(shù)都是虛函數(shù)。B 虛函數(shù)不得是靜態(tài)成員函數(shù)。C 只能通過(guò)指針和引用調(diào)用虛函數(shù)。D 抽象類中的成員函數(shù)都是虛函數(shù)。_。二、寫(xiě)出下列程序的運(yùn)行結(jié)果, 如您覺(jué)得有錯(cuò) , 寫(xiě)明出錯(cuò)原因; 如你覺(jué)得無(wú)輸出,請(qǐng)明確寫(xiě)出。(每小題
6、 5 分,共 40 分)1#include using namespace std;class Aprotected:int a;public:A(int p1) a=p1; int inc1(void) return +a; ;class B1:public Aprotected:int b1;public:B1(int p1,int p2):A(p1) b1=p2; int inc1(void) return A:inc1(); void display(void) couta=a b1=b1n; ; class B2:public Aprivate:int b2;public:B2(in
7、t p1,int p3):A(p1) b2=p3; int inc1(void) A:inc1(); A:inc1(); return A:inc1(); void display(void) couta=a b2=b2n; ;class C:private B1,public B2private:int c;public:C(int p11,int p12,int p21,int p22,int p):B1(p11,p12),B2(p21,p22) c=p; int inc1(void) return B2:inc1(); void display(void) B1:display(); B
8、2:display(); coutc=cn; ; int main(void)C d(1,2,3,4,5);coutn;d.display();coutn;d.inc1();d.display();return 0; 2#include using namespace std;templateclass TclassT x,y;public:Tclass (T a,T b):x(a) y=b; Tclass (T a) y=(T)0, x=a; void pr( ) char c; c=(y=(T)0)? +:-; coutxc(T)0 ? y : -y) iendl; ;int main(
9、)Tclass a(10.5,-5.8);a.pr( );Tclass b(10);b.pr( );return 0;3.#include #include #include using namespace std;int main () vectorvector datas; Ifstream ifs(test.dat);intm,n;ifs m n;inti, j;for (i = 0; i m; i +) vector V;for (j = 0; j x; V.push_back(x); datas.push_back (V);for (i = 0; i m; i +) for (j =
10、 0 ;j n; j +) cout datas ij ;cout endl; 文件 Test.dat內(nèi)容如下:341234567891011 124.#include using namespace std;class CAT public: CAT() itsAge=new int;*itsAge=5;CAT() delete itsAge;itsAge=NULL;int GetAge() return *itsAge; void SetAge(int age) *itsAge=age; protected: int *itsAge;int main() CAT a; coutas age
11、:a.GetAge()endl;a.SetAge(6);CAT b(a); coutas age:a.GetAge()endl;coutbs age:b.GetAge()endl; a.SetAge(7);coutas age:a.GetAge()endl; coutbs age:b.GetAge()endl; 5#include using namespace std;#include class Base private: char msg30; protected: int n;public: Base(char s,int m=0):n(m) strcpy(msg,s); void o
12、utput(void) coutnendlmsgendl; ;class Derived1:public Base private:int n;public:Derived1 (int m=1): Base(Base,m-1) n=m; void output(void) coutnendl; Base:output(); ;class Derived2:public Derived1 private:int n;public:Derived2(int m=2):Derived1(m-1) n=m; void output(void) coutnendl; Derived1:output();
13、 ;int main() Base B(Base Class,1); Derived2 D; B.output(); D.output();6#include using namespace std;class Rr public: Rr(int a)data=a;operator int() return data;operator double()return double(data);private:int data; ;int main()Rr r1(2),r2(4);int x=int(r1)+int(r2);double y=double(r1)/double(r2);coutx=
14、x,y=yendl;return 0; 7.#include using namespace std;class sz int intT1;public: sz() intT1=5;void Set1(int t) intT1=t;int Get1() return intT1; ;class sz2 public:sz2() mszT=new sz(); mszT2=new sz();sz *f1() mszT2=new sz(); mszT2-Set1(1); return mszT2; sz *f2() const return mszT; const sz *f3() return m
15、szT; const sz *f4() const return mszT2;private:sz *mszT;sz *mszT2; ;int main() sz t;sz2 f;sz *s1=f.f1();coutGet1()Set1(10);coutGet1()endl;s1=f.f2();coutGet1()Set1(20);coutGet1()endl;const sz *s2=f.f3(); t=*s2;coutt.Get1()endl;s2=f.f1();t=*s2;coutt.Get1()endl;sz * const s3=f.f1(); t=*s3; coutt.Get1()
16、Set1(30);coutGet1()endl;return 0; 8.#include using namespace std;class A public: virtual void print(int x) cout A: x t ; ;classB:publicA public:virtualvoidprint(floatx) coutB:x t;class C:public A public: virtual void print(int x) cout C: x endl; ;void show(A &a) a.print(3); void main( )A a;B b;C c;a
17、.print(1);b.print(2);c.print(3);show(a); show(b); show(c); ;三、 程序填空題 ( 每空 2.5 分,共 25 分)1 下面程序定義了一個(gè)圓類,其數(shù)據(jù)成員為圓心坐標(biāo)和半徑,成員函數(shù)area() 計(jì)算圓的面積,應(yīng)用程序生成兩個(gè)圓類實(shí)例,若是同心圓則計(jì)算圓環(huán)的面積。#include using namespace std;const double pi=3.14159;class circleint x,y; /圓心坐標(biāo)double r; /圓半徑public:circle( _ ) /參數(shù)缺省值均為 x=i; y=j; r=a; int
18、getx() return x; int gety() return y; double area(); ;0_ area() return pi*r*r;void main() circle cmin(5,5,10), cmax(5,5,17);if ( _ ) /圓心坐標(biāo)相同coutring area= _ endl; /輸出圓環(huán)的面積2下列程序的輸出結(jié)果為012。#include using namespace std;class Testpublic: _Test() void print() cout data; private:int data; ;int main()Test t3= _;for(int i=0;i3;i+) ti
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 供應(yīng)鏈金融財(cái)務(wù)代理與風(fēng)險(xiǎn)控制合同范本
- 外籍員工招聘代理服務(wù)合同
- 私人借款合同(2篇)
- DBJ04-492-2025 《文物建筑防火技術(shù)標(biāo)準(zhǔn)》
- 世界鉑金投資協(xié)會(huì)《鉑金季刊》2025年第1季度報(bào)告解讀
- Brand KPIs for health insurance:Kaiser Permanente in the United States-英文培訓(xùn)課件2025.4
- 大型船舶廚房模塊化設(shè)計(jì)研究
- Web程序設(shè)計(jì)(微課版) 課后習(xí)題及答案 -第1-6章
- 地鐵集團(tuán)資金管理制度
- 得勝口至大同公路跨鐵路立交橋技術(shù)標(biāo)
- 國(guó)學(xué)導(dǎo)論·巴蜀文化課件
- 旅游出入境與交通管理法規(guī)制度課件
- 史上最全區(qū)塊鏈詳解課件
- 能源計(jì)量器具配備和管理
- 《食品經(jīng)營(yíng)許可證》申請(qǐng)報(bào)告書(shū)空白模板
- 國(guó)家開(kāi)放大學(xué)《監(jiān)督學(xué)》形考任務(wù)( 1-4)試題和答案解析
- 《遺愛(ài)寺》-完整版課件
- 三相三線電能表
- 試卷交接簽字單
- 加油站相鄰企業(yè)安全應(yīng)急救援互助協(xié)議
- 傳媒公司合作合同
評(píng)論
0/150
提交評(píng)論