《C++面向?qū)ο蟪绦蛟O(shè)計》

上傳人:xinsh****encai 文檔編號:26915473 上傳時間:2021-08-14 格式:DOC 頁數(shù):11 大?。?0KB
收藏 版權(quán)申訴 舉報 下載
《C++面向?qū)ο蟪绦蛟O(shè)計》_第1頁
第1頁 / 共11頁
《C++面向?qū)ο蟪绦蛟O(shè)計》_第2頁
第2頁 / 共11頁
《C++面向?qū)ο蟪绦蛟O(shè)計》_第3頁
第3頁 / 共11頁

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《《C++面向?qū)ο蟪绦蛟O(shè)計》》由會員分享,可在線閱讀,更多相關(guān)《《C++面向?qū)ο蟪绦蛟O(shè)計》(11頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、《C++面向?qū)ο蟪绦蛟O(shè)計》 一、選擇題(每小題2分,共20分) 1.一個C++類( )。 A. 只能有一個構(gòu)造函數(shù)和一個析構(gòu)函數(shù) B. 可以有一個構(gòu)造函數(shù)和多個析構(gòu)函數(shù) C. 可以有多個構(gòu)造函數(shù)和一個析構(gòu)函數(shù) D. 可以有多個構(gòu)造函數(shù)和多個析構(gòu)函數(shù) 2. 關(guān)于類概念的描述中,(   )是錯誤的。 A.類是抽象數(shù)據(jù)類型的實現(xiàn); B.類是具有共同行為的若干對象的統(tǒng)一描述體; C.類是創(chuàng)建對象的樣板;   D.類不是C++中的一種數(shù)據(jù)類型; 3. 下述靜態(tài)數(shù)據(jù)成員的特征中,( )是錯誤的。 A.說明靜態(tài)數(shù)據(jù)成員時前邊要加修飾符static; B.靜態(tài)

2、數(shù)據(jù)成員要在類外進行初始化; C.引用靜態(tài)數(shù)據(jù)成員時,要在靜態(tài)數(shù)據(jù)成員名前加<類名>和作用域運算符; D.靜態(tài)數(shù)據(jù)成員不是所有對象所共用的。 4.下面有關(guān)重載函數(shù)的說法中正確的是( ) A.重載函數(shù)必須具有不同的返回值類型;   B.重載函數(shù)形參個數(shù)必須不同;   C.重載函數(shù)必須有不同的形參列表   D.重載函數(shù)名可以不同; 5.下列各類函數(shù)中,( )不是類的成員函數(shù) A.構(gòu)造函數(shù) B. 析構(gòu)函數(shù) C. 友元函數(shù) D. 復(fù)制構(gòu)造函數(shù) 6.下面描述中,表達錯誤的是( ) A.公有繼承時

3、基類中的public成員在派生類中仍是public的   B.公有繼承是基類中的private成員在派生類中仍是private的   C.公有繼承時基類中的protected成員在派生類中仍是protected的   D.私有繼承時基類中的public成員在派生類中是private的 7. 在C++中,關(guān)于下列設(shè)置參數(shù)默認的描述中,( )是正確的。 A.不允許設(shè)置參數(shù)的默認值; B.設(shè)置參數(shù)默認值只能在定義函數(shù)時設(shè)置; C.設(shè)置參數(shù)默認值時,應(yīng)該是先設(shè)置右邊的再設(shè)置左邊的; D.設(shè)置參數(shù)默認值時,應(yīng)該全部參數(shù)都設(shè)置; 8. 下列存儲類標識符中,要求通過函數(shù)來實現(xiàn)

4、一種不太復(fù)雜的功能,并且要求加快執(zhí)行速度,選用( )合適。 A. 內(nèi)聯(lián)函數(shù) B. 重載函數(shù) C. 遞歸調(diào)用 D. 嵌套調(diào)用 9. 下列(   )是引用調(diào)用。 A.形參是指針,實參是地址值; B.形參和實參都是變量; C.形參是數(shù)組名,實參是數(shù)組名; D.形參是引用,實參是變量。 10.有如下程序: #include classBASE { charc; public: BASE(charn):c(n){} virtual~BASE(){cout<

5、{ charc; public: DERIVED(charn):BASE(n+1),c(n){} ~DERIVED(){cout<

6、友元類中的所有成員函數(shù)可以存取或修改該類中的私有成員。(  ) 4.私有繼承中,基類中所有成員對派生類的對象都是不可見的。(  ) 5.對象數(shù)組的元素可以是不同類的對象。(  ) 6.多繼承情況下,派生類的構(gòu)造函數(shù)的執(zhí)行順序并不取決于定義派生類時所指定的各基類的順序。( ) 7.返回值類型、參數(shù)個數(shù)和類型都相同的函數(shù)也可以重載。(  ) 8.C++中使用了新的注釋符(//),C語言中注釋符(/*…*/)不能在C++中使用。(  ) 9.友元函數(shù)是類的成員函數(shù),所以可以存取或修改該類中的私有成員。(  ) 10.在一個被調(diào)用函數(shù)中,一個return語句不可返回多個值給調(diào)用

7、函數(shù)。( ?。? 三、填空題(每空1分,共10分) 1.在一個派生類中,對基類成員、類對象成員和非類對象成員的初始化次序是先 ,后 ,最后為 。 2.若需要定義一個標識符常量,并且使C++能夠進行類型檢查,則應(yīng)在定義語句的開始使用保留字 。 3.若需要把一個函數(shù)"void F();”定義為一個類AB的友元函數(shù),則應(yīng)在類AB的定義中加入一條語句 。 4.當(dāng)一個類對象離開它的作用域時,系統(tǒng)將自動調(diào)用該類的 。 5.假定AB為一個類,則執(zhí)行"AB a[8];”語句時,

8、系統(tǒng)自動調(diào)用該類構(gòu)造函數(shù)的次數(shù)為 。 6.動態(tài)多態(tài)性是在程序運行時通過改變具有虛函數(shù)定義的基類 ,使其指向不同派生類 從而調(diào)用不同版本的 ,動態(tài)地實現(xiàn)對同一消息的不同響應(yīng)。 四、讀程并寫出程序的運行結(jié)果(每小題5分,共20分) 1、#include void swap(int x,int &y); void main() { int a(10),b; b=a/5; cout<<"a="<

9、a,b); cout<<"a="< class AA { public: AA(int i,int j) {A=i;B=j;cout<<"Constructor\n";} AA(AA &obj) {A=obj.A+10;B=obj.B+20;cout<<"Copy_Constructor\n";} ~AA() {cout<

10、<"Destructor\n";} void print() {cout<<"A="<print(); delete pa; } 3、#include class B { public: B();

11、 B(int i); ~B(); void Print() ; private: int b; }; B::B() { b=0; cout<<"Bs default constructor called."<

12、 cout<

13、cout<<"Cs destructor called."< class CSample { public: CSample(); void Display(); private: int i; static int k; }; Csmaple::CSample

14、() {i=0; k++; } void CSample::Display() { cout<<”i=”< class A{ public: A(int i){m=i;} void sho

15、w(){cout<

16、之后添加適當(dāng)?shù)恼Z句。 (2) 完成默認構(gòu)造函數(shù)Date的定義,使Date對象的默認值為:year=1,month=1,day=1,請在注釋"http://* *2**"之后添加適當(dāng)?shù)恼Z句。 (3) 完成重載構(gòu)造函數(shù)Date(inty,intm,intd)的定義,把數(shù)據(jù)成員year,month和day分別初始化為參數(shù)y,m,d的值,請在注釋"//**3* *"之后添加適當(dāng)?shù)恼Z句。 (4) 完成成員函數(shù)print的類外定義,使其以"年-月-日"的格式將Date對象的值輸出到屏幕上。請在注釋"//**4 **"之后添加適當(dāng)?shù)恼Z句。 注意:除在指定位置添加語句之外,請不要改動程序中的其他內(nèi)源程序

17、文件main.cpp清單如下: //main.cpp #include classDate { public: //**2** Date(inty,intm,intd) {  //**3** } voidprint()const; private: //datemembers //**1** }; voidDate::print()const { //**4** } intmain() { Datenational_day(1949,10,1); national_day

18、.print(); return0; } 3、用C++語言定義MyString(包括成員函數(shù)的實現(xiàn)代碼),使之能符合下面程序及在注釋中描述的運行結(jié)果的要求: main() { MyString s1 = "0123456789", s2(5), s3; s1.display(); // 此時顯示出: <0123456789> s2.display(); // 此時顯示出(<>之間是五個空格): < > s3.display(); // 此時顯示出: <> s3 = s1; s

19、3.display(); // 此時顯示出: <0123456789> s2 = s1[2]; s2.display(); // 此時顯示出: <23456789> s1.display(); // 此時顯示出: <0123456789> s3 = s2++; s2.display(); // 此時顯示出: <3456789> s3.display(); // 此時顯示出: <23456789> } 參考答案及評分標準 一. 選擇題(每

20、小題2分,共20分) 1、C 2、A 3、D 4、C 5、C 6、B 7、C 8、A 9、D 10、A 二.判斷題(每小題1分,共10分) 1、   2、√   3、√    4、    5、 6、   7、   8、    9、    10、√ 三.填空題(每空1分,共10分) 1、 基類成員、類對象成員、非類對象成員 2、const 3、friend void F(); 4、析構(gòu)函數(shù) 5、8 6、指針、對象、虛函數(shù) 四.讀程序并寫出程序的運行結(jié)果(每題5分,共20分) 1、a=10,b=2

21、 a=10,b=10 2、Constructor Copy_ Constructor A=12,B=23 Constructor A=5,B=6 Destructor Destructor Destructor 3、B’constructor called. C’constructor called. 5 6 C’destructor called. B’destructor called. 4、i=0,k=2 i=0,k=2 五.編程題(第1題9分,第2題16分,第3題15分,共40分) 1、

22、void ~A(){}:析構(gòu)函數(shù)沒有返回值,可改為~A(){}; A a;:沒有定義無參構(gòu)造函數(shù),可改為A a(10);(括號中可以是任意整數(shù)。) a.m+=10;:不能在類外訪問類的私有成員,將數(shù)據(jù)成員m的訪問權(quán)限改為public。 2、 //**1** int year; int month; int day; //**2** Date() { year=1;month=1;day=1; } //**3** year=y;month=m;day=d; //**4** cout<

23、ndl; 3、 class MyString { char cpBody[81]; public: MyString(const char* p = NULL); MyString(int i); MyString& operator=(const MyString& s) { strncpy(cpBody, s.cpBody, 80); return *this; } MyString& operator[](int i); MyString& operator++(int i) { static

24、MyString s; s = *this; *this = (cpBody[0] == ‘\0‘) ? *this : (*this)[1]; return s; } void display() { printf("<%s>\n", cpBody); } }; MyString::MyString(const char* p) { if (p == NULL) cpBody[0] = ‘\0‘; else strncpy(cpBody, p, 80); } MyString::MyString(int i)

25、 { int j; for (j = 0; j < i && j < 80; j++) cpBody[j] = ‘ ‘; cpBody[j] = ‘\0‘; } MyString& MyString::operator[](int i) { static MyString s; int j; s = *this; for (j = i; cpBody[j] != ‘\0‘; j++) s.cpBody[j-i] = s.cpBody[j]; s.cpBody[j-i] = ‘\0‘; return s; } 第 11 頁 共 11 頁

展開閱讀全文
溫馨提示:
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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!

五月丁香婷婷狠狠色,亚洲日韩欧美精品久久久不卡,欧美日韩国产黄片三级,手机在线观看成人国产亚洲