歡迎來(lái)到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁(yè) 裝配圖網(wǎng) > 資源分類 > DOC文檔下載  

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

  • 資源ID:26915473       資源大?。?span id="ntsmnd5" class="font-tahoma">80KB        全文頁(yè)數(shù):11頁(yè)
  • 資源格式: DOC        下載積分:10積分
快捷下載 游客一鍵下載
會(huì)員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺(tái)登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要10積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號(hào),方便查詢和重復(fù)下載(系統(tǒng)自動(dòng)生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號(hào):
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會(huì)被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁(yè)到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請(qǐng)使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無(wú)水印,預(yù)覽文檔經(jīng)過(guò)壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒(méi)有明確說(shuō)明有答案則都視為沒(méi)有答案,請(qǐng)知曉。

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

C+面向?qū)ο蟪绦蛟O(shè)計(jì)一、選擇題(每小題2分,共20分)1一個(gè)C+類( )。A. 只能有一個(gè)構(gòu)造函數(shù)和一個(gè)析構(gòu)函數(shù) B. 可以有一個(gè)構(gòu)造函數(shù)和多個(gè)析構(gòu)函數(shù)C. 可以有多個(gè)構(gòu)造函數(shù)和一個(gè)析構(gòu)函數(shù)D. 可以有多個(gè)構(gòu)造函數(shù)和多個(gè)析構(gòu)函數(shù)2. 關(guān)于類概念的描述中,( )是錯(cuò)誤的。A類是抽象數(shù)據(jù)類型的實(shí)現(xiàn); B類是具有共同行為的若干對(duì)象的統(tǒng)一描述體;C類是創(chuàng)建對(duì)象的樣板; D類不是C+中的一種數(shù)據(jù)類型;3. 下述靜態(tài)數(shù)據(jù)成員的特征中,( )是錯(cuò)誤的。A說(shuō)明靜態(tài)數(shù)據(jù)成員時(shí)前邊要加修飾符static;B.靜態(tài)數(shù)據(jù)成員要在類外進(jìn)行初始化;C引用靜態(tài)數(shù)據(jù)成員時(shí),要在靜態(tài)數(shù)據(jù)成員名前加<類名>和作用域運(yùn)算符;D靜態(tài)數(shù)據(jù)成員不是所有對(duì)象所共用的。4下面有關(guān)重載函數(shù)的說(shuō)法中正確的是( ) A重載函數(shù)必須具有不同的返回值類型;B重載函數(shù)形參個(gè)數(shù)必須不同; C重載函數(shù)必須有不同的形參列表D重載函數(shù)名可以不同; 5下列各類函數(shù)中,( )不是類的成員函數(shù)A構(gòu)造函數(shù) B. 析構(gòu)函數(shù) C. 友元函數(shù) D. 復(fù)制構(gòu)造函數(shù)6下面描述中,表達(dá)錯(cuò)誤的是( ) A公有繼承時(shí)基類中的public成員在派生類中仍是public的 B公有繼承是基類中的private成員在派生類中仍是private的 C公有繼承時(shí)基類中的protected成員在派生類中仍是protected的 D私有繼承時(shí)基類中的public成員在派生類中是private的 7. 在C+中,關(guān)于下列設(shè)置參數(shù)默認(rèn)的描述中,( )是正確的。A.不允許設(shè)置參數(shù)的默認(rèn)值;B.設(shè)置參數(shù)默認(rèn)值只能在定義函數(shù)時(shí)設(shè)置;C.設(shè)置參數(shù)默認(rèn)值時(shí),應(yīng)該是先設(shè)置右邊的再設(shè)置左邊的;D.設(shè)置參數(shù)默認(rèn)值時(shí),應(yīng)該全部參數(shù)都設(shè)置;8. 下列存儲(chǔ)類標(biāo)識(shí)符中,要求通過(guò)函數(shù)來(lái)實(shí)現(xiàn)一種不太復(fù)雜的功能,并且要求加快執(zhí)行速度,選用( )合適。A. 內(nèi)聯(lián)函數(shù) B. 重載函數(shù) C. 遞歸調(diào)用 D. 嵌套調(diào)用9. 下列( )是引用調(diào)用。A形參是指針,實(shí)參是地址值; B形參和實(shí)參都是變量;C形參是數(shù)組名,實(shí)參是數(shù)組名; D形參是引用,實(shí)參是變量。10有如下程序: include classBASE charc; public: BASE(charn):c(n) virtualBASE()cout<<c; ; classDERIVED:publicBASE charc; public: DERIVED(charn):BASE(n+1),c(n) DERIVED()cout<<c; ; intmain() DERIVED("X"); return0; 執(zhí)行上面的程序?qū)⑤敵觯?)。 AXY B.YX CX DY 二、判斷題(每小題2分,共10分)1數(shù)組賦初值時(shí),初始值表中的數(shù)據(jù)項(xiàng)的數(shù)目可以大于或等于數(shù)組元素的個(gè)數(shù)。( )2類中所提供的成員函數(shù)可以直接訪問(wèn)該類的私有成員。()3某類的友元類中的所有成員函數(shù)可以存取或修改該類中的私有成員。( )4私有繼承中,基類中所有成員對(duì)派生類的對(duì)象都是不可見(jiàn)的。()5對(duì)象數(shù)組的元素可以是不同類的對(duì)象。( )6多繼承情況下,派生類的構(gòu)造函數(shù)的執(zhí)行順序并不取決于定義派生類時(shí)所指定的各基類的順序。( )7返回值類型、參數(shù)個(gè)數(shù)和類型都相同的函數(shù)也可以重載。( )8C+中使用了新的注釋符(/),C語(yǔ)言中注釋符(/*/)不能在C+中使用。( )9友元函數(shù)是類的成員函數(shù),所以可以存取或修改該類中的私有成員。( )10在一個(gè)被調(diào)用函數(shù)中,一個(gè)return語(yǔ)句不可返回多個(gè)值給調(diào)用函數(shù)。()三、填空題(每空1分,共10分)1在一個(gè)派生類中,對(duì)基類成員、類對(duì)象成員和非類對(duì)象成員的初始化次序是先 ,后 ,最后為 。2若需要定義一個(gè)標(biāo)識(shí)符常量,并且使C+能夠進(jìn)行類型檢查,則應(yīng)在定義語(yǔ)句的開始使用保留字 。3若需要把一個(gè)函數(shù)"void F();”定義為一個(gè)類AB的友元函數(shù),則應(yīng)在類AB的定義中加入一條語(yǔ)句 。4當(dāng)一個(gè)類對(duì)象離開它的作用域時(shí),系統(tǒng)將自動(dòng)調(diào)用該類的 。5假定AB為一個(gè)類,則執(zhí)行"AB a8;”語(yǔ)句時(shí),系統(tǒng)自動(dòng)調(diào)用該類構(gòu)造函數(shù)的次數(shù)為 。6動(dòng)態(tài)多態(tài)性是在程序運(yùn)行時(shí)通過(guò)改變具有虛函數(shù)定義的基類 ,使其指向不同派生類 從而調(diào)用不同版本的 ,動(dòng)態(tài)地實(shí)現(xiàn)對(duì)同一消息的不同響應(yīng)。四、讀程并寫出程序的運(yùn)行結(jié)果(每小題5分,共20分)1、#include<iostream.h>void swap(int x,int &y);void main()int a(10),b;b=a/5;cout<<"a="<<a<<","<<"b="<<b<<endl;swap(a,b);cout<<"a="<<a<<","<<"b="<<b<<endl;void swap(int x,int &y)int temp=x;x=y;y=temp;2、#include <iostream.h>class AA public: AA(int i,int j) A=i;B=j;cout<<"Constructorn" AA(AA &obj) A=obj.A+10;B=obj.B+20;cout<<"Copy_Constructorn" AA() cout<<"Destructorn" void print() cout<<"A="<<A<<",B="<<B<<endl; private: int A,B;void main() AA a1(2,3); AA a2(a1); a2.print(); AA *pa=new AA(5,6); pa->print(); delete pa; 3、#include<iostream.h>class B public: B(); B(int i); B(); void Print() ; private: int b;B:B()b=0; cout<<"Bs default constructor called."<<endl;B:B(int i) b=i; cout<<"Bs constructor called." <<endl;B:B()cout<<"Bs destructor called."<<endl; void B:Print()cout<<b<<endl;class C:public B public: C(); C(int i,int j); C(); void Print() ; private: int c;C:C()c=0;cout<<"Cs default constructor called."<<endl;C:C(int i,int j):B(i)c=j;cout<<"Cs constructor called."<<endl;C:C()cout<<"Cs destructor called."<<endl; void C:Print() B:Print();cout<<c<<endl;void main()C obj(5,6);obj.Print();4、#include <iostream.h>class CSample public: CSample(); void Display();private: int i; static int k; ; Csmaple:CSample() i=0; k+; void CSample:Display() cout<<”i=”<<i<<”,”<<”k=”<<k<<endl;int CSample:k=0;void main() CSample a,b;a.Display();b.Display();五、編程題(第1小題9分,第2小題16分,第3小題15分,共40分)1指出下列程序的錯(cuò)誤,并改正。#include <iostream.h>class Apublic:A(int i)m=i;void show()cout<<m;/*found*/void A()private:int m;void main()/*found*/A a;/*found*/a.m+=10;a.show();2已知一個(gè)源程序文件main.cpp。其中定義了用于表示日期的類Date,但類Date的定義并不完整。請(qǐng)按要求完成下列操作,將類Date的定義補(bǔ)充完整。(1) 定義私有數(shù)據(jù)成員year,month和day分別用于表示年,月,日,它們都是int型的數(shù)據(jù)。請(qǐng)?jiān)谧⑨?quot;/*1 *"之后添加適當(dāng)?shù)恼Z(yǔ)句。 (2) 完成默認(rèn)構(gòu)造函數(shù)Date的定義,使Date對(duì)象的默認(rèn)值為:year=1,month=1,day=1,請(qǐng)?jiān)谧⑨?quot;/* *2*之后添加適當(dāng)?shù)恼Z(yǔ)句。 (3) 完成重載構(gòu)造函數(shù)Date(inty,intm,intd)的定義,把數(shù)據(jù)成員year,month和day分別初始化為參數(shù)y,m,d的值,請(qǐng)?jiān)谧⑨?* *之后添加適當(dāng)?shù)恼Z(yǔ)句。 (4) 完成成員函數(shù)print的類外定義,使其以年月日的格式將Date對(duì)象的值輸出到屏幕上。請(qǐng)?jiān)谧⑨?* *之后添加適當(dāng)?shù)恼Z(yǔ)句。 注意:除在指定位置添加語(yǔ)句之外,請(qǐng)不要改動(dòng)程序中的其他內(nèi)源程序文件main.cpp清單如下: /main.cpp #include <iostream.h>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.print(); return0; 3、用C+語(yǔ)言定義MyString(包括成員函數(shù)的實(shí)現(xiàn)代碼),使之能符合下面程序及在注釋中描述的運(yùn)行結(jié)果的要求:main() MyString s1 = "0123456789", s2(5), s3; s1.display(); / 此時(shí)顯示出: <0123456789> s2.display(); / 此時(shí)顯示出(<>之間是五個(gè)空格): < > s3.display(); / 此時(shí)顯示出: <> s3 = s1; s3.display(); / 此時(shí)顯示出: <0123456789> s2 = s12; s2.display(); / 此時(shí)顯示出: <23456789> s1.display(); / 此時(shí)顯示出: <0123456789> s3 = s2+; s2.display(); / 此時(shí)顯示出: <3456789> s3.display(); / 此時(shí)顯示出: <23456789> 參考答案及評(píng)分標(biāo)準(zhǔn)一 選擇題(每小題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、 基類成員、類對(duì)象成員、非類對(duì)象成員 2、const3、friend void F();4、析構(gòu)函數(shù)5、86、指針、對(duì)象、虛函數(shù)四讀程序并寫出程序的運(yùn)行結(jié)果(每題5分,共20分)1、a=10,b=2 a=10,b=102、Constructor Copy_ Constructor A=12,B=23ConstructorA=5,B=6DestructorDestructorDestructor 3、Bconstructor called. Cconstructor called. 5 6 Cdestructor called. Bdestructor called.4、i=0,k=2 i=0,k=2 五編程題(第1題9分,第2題16分,第3題15分,共40分)1、void A():析構(gòu)函數(shù)沒(méi)有返回值,可改為A();A a;:沒(méi)有定義無(wú)參構(gòu)造函數(shù),可改為A a(10);(括號(hào)中可以是任意整數(shù)。)a.m+=10;:不能在類外訪問(wèn)類的私有成員,將數(shù)據(jù)成員m的訪問(wèn)權(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<<year<<”-“<<month<<”-“<<day<<endl; 3、class MyString char cpBody81; 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 MyString s; s = *this; *this = (cpBody0 = 0) ? *this : (*this)1; return s; void display() printf("<%s>n", cpBody); ; MyString:MyString(const char* p) if (p = NULL) cpBody0 = 0;else strncpy(cpBody, p, 80); MyString:MyString(int i) int j;for (j = 0; j < i && j < 80; j+) cpBodyj = ; cpBodyj = 0; MyString& MyString:operator(int i) static MyString s;int j; s = *this;for (j = i; cpBodyj != 0; j+) s.cpBodyj-i = s.cpBodyj;s.cpBodyj-i = 0;return s; 第 11 頁(yè) 共 11 頁(yè)

注意事項(xiàng)

本文(《C++面向?qū)ο蟪绦蛟O(shè)計(jì)》)為本站會(huì)員(xinsh****encai)主動(dòng)上傳,裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請(qǐng)重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

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

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


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