C++模擬題5答案.doc_第1頁(yè)
C++模擬題5答案.doc_第2頁(yè)
C++模擬題5答案.doc_第3頁(yè)
C++模擬題5答案.doc_第4頁(yè)
C++模擬題5答案.doc_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

.C+程序設(shè)計(jì)模擬試卷(五)一、單項(xiàng)選擇題(本大題共20小題,每小題1分,共20分)在每小題列出的四個(gè)備選項(xiàng)中只有一個(gè)是符合題目要求的,請(qǐng)將其代碼填寫在題后的括號(hào)內(nèi)。錯(cuò)選、多選或未選均無分。1. 靜態(tài)成員函數(shù)沒有()A. 返回值B. this指針C. 指針參數(shù)D. 返回類型答案:B解析:(P107)靜態(tài)成員函數(shù)是普通的函數(shù)前加入static,它具有函數(shù)的所有的特征:返回類型、形參,所以使用(P107)靜態(tài)成員函數(shù),指針可以作為形參,也具有返回值。靜態(tài)成員是類具有的屬性,不是對(duì)象的特征,而this表示的是隱藏的對(duì)象的指針,因此靜態(tài)成員函數(shù)沒有this 指針。靜態(tài)成員函數(shù)當(dāng)在類外定義時(shí),要注意不能使用static關(guān)鍵字作為前綴。由于靜態(tài)成員函數(shù)在類中只有一個(gè)拷貝(副本),因此它訪問對(duì)象的成員時(shí)要受到一些限制:靜態(tài)成員函數(shù)可以直接訪問類中說明的靜態(tài)成員,但不能直接訪問類中說明的非靜態(tài)成員;若要訪問非靜態(tài)成員時(shí),必須通過參數(shù)傳遞的方式得到相應(yīng)的對(duì)象,再通過對(duì)象來訪問。2. 在類的定義中,用于為對(duì)象分配內(nèi)存空間,對(duì)類的數(shù)據(jù)成員進(jìn)行初始化并執(zhí)行其他內(nèi)部管理操作的函數(shù)是()A. 友元函數(shù)B. 虛函數(shù)C. 構(gòu)造函數(shù)D. 析構(gòu)函數(shù)答案:C解析:(P75)定義構(gòu)造函數(shù)作用就是初始化對(duì)象,而析構(gòu)函數(shù)釋放對(duì)象空間。虛函數(shù)用于完成多態(tài)性,友元增加訪問方便性。3. 所有在函數(shù)中定義的變量,都是()A. 全局變量B. 局部變量C. 靜態(tài)變量D. 寄存器變量答案:B解析:(P136)變量存儲(chǔ)類可分為兩類:全局變量和局部變量。(1)全局變量:在函數(shù)外部定義的變量稱為全局變量,其作用域?yàn)椋簭亩x變量的位置開始到源程序結(jié)束。全局變量增加了函數(shù)之間數(shù)據(jù)聯(lián)系的渠道,全局變量作用域內(nèi)的函數(shù),均可使用、修改該全局變量的值,但是使用全局變量降低了程序的可理解性,軟件工程學(xué)提倡盡量避免使用全局變量。(2)局部變量:在函數(shù)內(nèi)部定義的變量稱為局部變量,其作用域?yàn)椋簭亩x變量的位置開始到函數(shù)結(jié)束。局部變量包含自動(dòng)變量(auto)靜態(tài)變量(static)以及函數(shù)參數(shù)。auto變量意味著變量的存儲(chǔ)空間的分配與釋放是自動(dòng)進(jìn)行的。說明符auto可以省略。函數(shù)中的局部變量存放在??臻g。在函數(shù)開始運(yùn)行時(shí),局部變量被分配內(nèi)存單元,函數(shù)結(jié)束時(shí),局部變量釋放內(nèi)存單元。因此,任兩個(gè)函數(shù)中的局部變量可以同名,因其占有不同的內(nèi)存單元而不影響使用。這有利于實(shí)現(xiàn)軟件開發(fā)的模塊化。static變量是定義在函數(shù)體內(nèi)的變量,存放在靜態(tài)存儲(chǔ)區(qū),不用棧空間存儲(chǔ),其值并不隨存儲(chǔ)空間的釋放而消失。4. 假定AB為一個(gè)類,則執(zhí)行“AB a(2), b3,*p4;”語(yǔ)句時(shí)調(diào)用該類構(gòu)造函數(shù)的次數(shù)為()A. 3B. 4C. 5D. 9答案:B解析:(P79)a(2)調(diào)用1次帶參數(shù)的構(gòu)造函數(shù),b3調(diào)用3次無參數(shù)的構(gòu)造函數(shù),指針沒有給它分配空間,沒有調(diào)用構(gòu)造函數(shù)。所以共調(diào)用構(gòu)造函數(shù)的次數(shù)為4。5. 如果表達(dá)式+a中的“+”是作為成員函數(shù)重載的運(yùn)算符,若采用運(yùn)算符函數(shù)調(diào)用格式,則可表示為()A. a.operator+(1)B. operator+(a)C. operator+(a,1)D. a.operator+()答案:D解析:(P186)運(yùn)算符的重載,前綴先讓變量變化。調(diào)用a,等價(jià)為a.operator+(),注意無參的形式。后綴的話a+,等價(jià)于a.operator(0),帶形參,形參名可省。6. 已知f1和f2是同一類的兩個(gè)成員函數(shù),但f1不能直接調(diào)用f2,這說明()A. f1和f2都是靜態(tài)函數(shù)B. f1不是靜態(tài)函數(shù),f2是靜態(tài)函數(shù)C. f1是靜態(tài)函數(shù),f2不是靜態(tài)函數(shù)D. f1和f2都不是靜態(tài)函數(shù)答案:C解析:(P107)普通成員函數(shù)可以調(diào)用靜態(tài)函數(shù),相反靜態(tài)函數(shù)不能調(diào)用普通成員函數(shù),這與普通函數(shù)與常成員函數(shù)相同。因此選擇C項(xiàng)。7. 一個(gè)函數(shù)功能不太復(fù)雜,但要求被頻繁調(diào)用,則應(yīng)把它定義為 ()A. 內(nèi)聯(lián)函數(shù)B. 重載函數(shù)C. 遞歸函數(shù)D. 嵌套函數(shù)答案:A解析:(P59)內(nèi)聯(lián)函數(shù)特征代碼少,頻繁調(diào)用,執(zhí)行效率高。重載函數(shù)解決統(tǒng)一接口的問題;遞歸是子程序調(diào)用,程序調(diào)用要耗費(fèi)很多空間和時(shí)間,循環(huán)/迭代都比遞歸有效率得多,遞歸只是從形式上,邏輯比較簡(jiǎn)潔。嵌套函數(shù)即反復(fù)調(diào)用,速度較慢。所以選擇A項(xiàng)。8. 解決定義二義性問題的方法有()A. 只能使用作用域分辨運(yùn)算符B. 使用作用域分辨運(yùn)算符或成員名限定C. 使用作用域分辨運(yùn)算符或虛基類D. 使用成員名限定或賦值兼容規(guī)則答案:B解析:(P139)解決二義性問題主要要兩種方法:(1)賦值兼容規(guī)則;(2)虛基類。9. 在main函數(shù)中可以用p.a的形式訪問派生類對(duì)象p的基類成員a,其中a是()A. 私有繼承的公有成員B. 公有繼承的私有成員C. 公有繼承的保護(hù)成員D. 公有繼承的公有成員答案:D解析:(P132)公有成員可以在類外訪問,保護(hù)類型成員可以在派生類中訪問,但不能在類外訪問,在main函數(shù)中訪問,說明a是公有成員。只有公有繼承時(shí)a才能是公有的,所以D項(xiàng)正確。10. 在C+中不返回任何類型的函數(shù)應(yīng)該說明為()A. intB. charC. voidD. double答案:C解析:無形參或無返回值都可以用void來聲明,int char double分別是整型、字符型和實(shí)型。11. 若Sample類中的一個(gè)成員函數(shù)說明如下:void set(Sample& a),則Sample& a的含義是()A. 指向類Sample的名為a的指針B. a是類Sample的對(duì)象引用,用來作函數(shù)Set()的形參C. 將a的地址賦給變量SetD. 變量Sample與a按位與的結(jié)果作為函數(shù)Set的參數(shù)答案:B解析:(P53)成員函數(shù)使用對(duì)象的引用作為形參。該函數(shù)的功能是將已知對(duì)象的所有數(shù)據(jù)成員的值拷貝給相應(yīng)對(duì)象的所有數(shù)據(jù)成員,不會(huì)建立臨時(shí)對(duì)象,這里是對(duì)象的引用所以選擇B。12. 要實(shí)現(xiàn)動(dòng)態(tài)聯(lián)編必須()A. 通過成員名限定來調(diào)用虛函數(shù)B. 通過對(duì)象名來調(diào)用虛函數(shù)C. 通過派生類對(duì)象來調(diào)用虛函數(shù)D. 通過對(duì)象指針或引用來調(diào)用虛函數(shù)答案:D解析:(P170)通過基類指針或基類引用來調(diào)用虛函數(shù)實(shí)現(xiàn)動(dòng)態(tài)多態(tài)性,靜態(tài)多態(tài)性通過重載來實(shí)現(xiàn)的。所以選擇D項(xiàng)。13. 在派生類中定義虛函數(shù)時(shí),可以與基類中相應(yīng)的虛函數(shù)不同的是()A. 參數(shù)類型B. 參數(shù)個(gè)數(shù)C. 函數(shù)名稱D. 函數(shù)體答案:D解析:(P170)虛函數(shù)在基類和派生類,具有相同的返回類型、形參類型和形參個(gè)數(shù),而函數(shù)體可以根據(jù)不同的派生類或基類實(shí)現(xiàn)不同的操作,即不同函數(shù)體。14. 實(shí)現(xiàn)兩個(gè)相同類型數(shù)加法的函數(shù)模板的聲明是()A. add(T x,T y)B. T add(x,y)C. T add(T x,y)D. T add(T x,T y)答案:D解析:(P63)實(shí)現(xiàn)兩個(gè)相同類型數(shù)加法結(jié)果應(yīng)該和操作數(shù)具有相同類型。進(jìn)行加法運(yùn)算后結(jié)果也是和參數(shù)具有相同類型,需要返回值。A無返回值時(shí)要用void,B形參無類型,C形參y沒有類型,所以選擇D項(xiàng)。15. 下列不是描述類的成員函數(shù)的是()A. 構(gòu)造函數(shù)B. 析構(gòu)函數(shù)C. 友元函數(shù)D. 拷貝構(gòu)造函數(shù)答案:C解析:(P109)友元函數(shù)雖然不是成員函數(shù)但是可以訪問類所有成員。構(gòu)造函數(shù)、析構(gòu)函數(shù)和拷貝構(gòu)造函數(shù)(復(fù)制構(gòu)造函數(shù))都是類的特殊函數(shù)用于對(duì)象的創(chuàng)建和撤銷,所以選擇C項(xiàng)。16. 繼承機(jī)制的作用是()A. 信息隱藏B. 數(shù)據(jù)封裝C. 定義新類D. 數(shù)據(jù)抽象答案:C解析:(P40)面向?qū)ο笤O(shè)計(jì)中的類的特點(diǎn):抽象、封裝、繼承和多態(tài)等,繼承用于對(duì)類的擴(kuò)展,所以選擇C項(xiàng)。17. 已知:p是一個(gè)指向類A數(shù)據(jù)成員m的指針,A1是類A的一個(gè)對(duì)象。如果要給m賦值為5,正確的是()A. A1.p=5;B. A1-p=5;C. A1.*p=5;D. *A1.p=5;答案:C解析:(P118)A中p是指針即地址,錯(cuò)誤;B選項(xiàng)中A1不是指針不能使用指向運(yùn)算符-,錯(cuò)誤;“*”比“.”級(jí)別要高,所以D選項(xiàng)*A1.p=5相當(dāng)于(*A1).p=5;錯(cuò)誤。另外涉及到指向成員函數(shù)時(shí)注意以下幾點(diǎn):指向成員函數(shù)的指針必須于其賦值的函數(shù)類型匹配的三個(gè)方面:(1)參數(shù)類型和個(gè)數(shù);(2)返回類型;(3)它所屬的類類型。成員函數(shù)指針的聲明:指向short型的Screen類的成員的指針定義如下: short Screen:* ps_Screen;ps_Screen可以用_height的地址初始化如下:short Screen:*ps_Screen=&Screen:_height;類成員的指針必須總是通過特定的對(duì)象或指向改類型的對(duì)象的指針來訪問。是通過使用兩個(gè)指向成員操作符的指針(針對(duì)類對(duì)象和引用的.*,以及針對(duì)指向類對(duì)象的指針的-*)。18. 如果采用動(dòng)態(tài)多態(tài)性,要調(diào)用虛函數(shù)的是()A. 基類對(duì)象指針B. 對(duì)象名C. 基類對(duì)象D. 派生類名答案:A解析:(P171)基類指針或者基類的引用調(diào)用虛函數(shù)都會(huì)產(chǎn)生動(dòng)態(tài)多態(tài)性19. 若有以下定義,則說法錯(cuò)誤的是()int a=100,*p=&a;A. 聲明變量p,其中*表示p是一個(gè)指針變量B. 變量p經(jīng)初始化,獲得變量a的地址C. 變量p只可以指向一個(gè)整型變量D. 變量p的值為100答案:D解析:指針變量如同其他變量一樣,在使用之前必須先聲明。聲明指針變量的格式為:*;其中,是指針變量所指向?qū)ο蟮念愋?,它可以是C+語(yǔ)言預(yù)定義的類型,也可以是用戶自定義類型。是用戶自定義的標(biāo)識(shí)符。符號(hào)*表示是指針變量。而不是普通變量。 *表示指針,p是變量,p指向一個(gè)整型的變量,值為a的地址值,*p=100。20. C+語(yǔ)言建立類族是通過()A. 類的嵌套B. 類的繼承C. 虛函數(shù)D. 抽象類答案:B解析:(P174)類族即同一個(gè)類派生出來的類,各個(gè)類是兄弟或父子關(guān)系。二、填空題(本大題共20小題,每小題1分,共20分)請(qǐng)?jiān)诿啃☆}的空格中填上正確答案。錯(cuò)填、不填均無分。1. 假設(shè)int a=1,b=2;則表達(dá)式(+a/b)*b-的值為_。答案:2解析前綴或表示先使變量值變化,再使用,這和后綴恰恰相反。但是編譯cout(+a/b)*b-時(shí),先+a/b值為1,后1*b-,先取b2,結(jié)果為2,再讓b1。2. 復(fù)制構(gòu)造函數(shù)使用_作為形式參數(shù)。答案:(P80)對(duì)象的引用解析復(fù)制構(gòu)造函數(shù)使用對(duì)象的引用來初始化一個(gè)新對(duì)象,避免臨時(shí)產(chǎn)生對(duì)象。3. 通過C+語(yǔ)言中的_機(jī)制,可以從現(xiàn)存類中構(gòu)建其子類。答案:(P127)繼承解析繼承概念,從現(xiàn)有的類生成新類,原有的類稱為父類或基類,新類又稱子類或派生類或衍生類,它是對(duì)基類的擴(kuò)充。4. 靜態(tài)成員函數(shù)、友元函數(shù)、構(gòu)造函數(shù)和析構(gòu)函數(shù)中,不屬于成員函數(shù)的是_。答案:(P109)友元函數(shù)解析友元函數(shù)不是類成員,但可以訪問類成員。類的封裝性保證了數(shù)據(jù)的安全,但引入友元,雖然訪問類是方便了,但確實(shí)破壞類訪問的安全性。5. 在下面的類定義中,私有成員有_。class Locationint X,Y;protected:int zeroX,zerxY;int SetZero(intzeroX, intzeroY);private:int length,height;public:void init(int initX,int initY);int GetX();int GetY();答案:(P69)X,Y,length,height6. 在C+程序設(shè)計(jì)中,建立繼承關(guān)系倒掛的樹應(yīng)使用_繼承。答案:(P138)單解析一個(gè)基類可以派生多個(gè)子類,一個(gè)子類可以再派生出多個(gè)子類,這樣就形成了一個(gè)倒立的樹。7. C+支持的兩種多態(tài)性分別是_多態(tài)性和運(yùn)行多態(tài)性。答案:(P165)靜態(tài)或編譯解析多態(tài)性包括靜態(tài)(編譯時(shí))的和動(dòng)態(tài)(運(yùn)行時(shí))的動(dòng)態(tài)性。8. C+中語(yǔ)句const char * const p=“hello”;所定義的指針p和它所指的內(nèi)容都不能被_。答案:(P12)修改解析使用const修改的內(nèi)容不能修改,這里同時(shí)修飾地址和值,表示地址和值都不變。9. 在C+中,定義虛函數(shù)的關(guān)鍵字是_。答案:(P170)virtual解析在普通函數(shù)前面用virtual修飾的函數(shù),就稱為虛函數(shù)。10. 采用私有派生方式,基類的public成員在私有派生類中是_成員。答案:(P132)私有11. 對(duì)賦值運(yùn)算符進(jìn)行重載時(shí),應(yīng)聲明為_函數(shù)。答案:(P183)類成員解析運(yùn)算符重載的方法有友元或者成員函數(shù)兩種途徑,但是賦值運(yùn)算符只能使用成員函數(shù)的方法來實(shí)現(xiàn)。12. 在C+中有兩種參數(shù)傳遞方式即值傳遞和_傳遞。答案:(P51)引用解析函數(shù)參數(shù)傳遞有傳值和傳引用兩種。13. 預(yù)處理命令以_符號(hào)開頭。答案:(P183)operater解析文件包含、預(yù)處理和編譯都是以開頭。14. 在構(gòu)造函數(shù)和析構(gòu)函數(shù)中調(diào)用虛函數(shù)時(shí)采用_。答案:(P167)靜態(tài)聯(lián)編解析在析構(gòu)或構(gòu)造函數(shù)調(diào)用虛函數(shù)發(fā)生靜態(tài)多態(tài)性。15. C+是通過引用運(yùn)算符_來定義一個(gè)引用的。答案:(P10)&解析引用是C不具有使用方法,它表示變量的別名,在函數(shù)中使用很頻繁,因?yàn)檎{(diào)用形式同傳值調(diào)用,但修改形參實(shí)參也會(huì)相應(yīng)改變的特征。16. 如果要把類B的成員函數(shù)void fun()說明為類A的友元函數(shù),則應(yīng)在類中加入語(yǔ)句_。答案:(P111)friend void B:fun();解析聲明成員函數(shù)作為另外一個(gè)類的友元函數(shù)時(shí),使用類作用域運(yùn)算符:。17. 如果要把PI聲明為值為3.14159類型為雙精度實(shí)數(shù)的符號(hào)常量,該聲明語(yǔ)句是_。答案:(P6)const double PI(3.14159);或者const double PI3.14159;解析使用const聲明符號(hào)常量,常量和常量值可以用括號(hào)也可以賦值號(hào)。18. 在C四個(gè)流對(duì)象中,_用于標(biāo)準(zhǔn)屏幕輸出。答案:(P194)cout解析cin、cout、cerr和clog中cin用于輸入,cout用于輸出,cerr、clog錯(cuò)誤處理。19. 執(zhí)行下列代碼int a=32;double c=32;cout.setf(ios:hex);couthex:a=a,c=cendl;cout.unsetf(ios:hex);程序的輸出結(jié)果為_。答案:(P193)hex:a=20,c=32解析用十六進(jìn)制只能輸出整型數(shù)據(jù),而不能將其它類型數(shù)據(jù)轉(zhuǎn)換成十六進(jìn)制的數(shù)據(jù)輸出。所以double類型不變?nèi)匀皇?2(double類型)。20. 已知有20個(gè)元素int類型向量V1,若用V1初始化為V2向量,語(yǔ)句是_。答案:(P151)ector V2(V1);解析采用向量初始化另一個(gè)向量的形式:vector name1(name);三、改錯(cuò)題(本大題共5小題,每小題4分,共20分)1. #include class A private:int x;public:A(int i)x=i;A()x=0;friend int min(A&,A&);int min(A & a,A &b) return (a.xb.x)?a.x:b.x;void main() A a(3),b(5);couta.min(a,b)endl;答案:couta.min(a,b)endl;友元函數(shù)不是類成員,所以對(duì)象a不能使用a.min(a,b)這種方法。min就是一個(gè)普通的友元函數(shù)。修改coutmin(a,b)endl;2. #include class shapepublic:virtual int area()return 0;class rectangle:public shapepublic:int a, b;void setLength (int x, int y) a=x;b=y;int area() return a*b;void main()rectangle r;r.setLength(3,5);shape s1,*s2=&r;cout r.area() endl;s2=s1;cout s2.area()endl;答案:shape s1,*s2=r;指針使用錯(cuò)誤。s是指針使用它指向?qū)ο蟮某蓡T有兩種方法,有下面兩行可知,使用的是引用。修改改為shape &s=r;3. 下面的類定義中有一處錯(cuò)誤,請(qǐng)用下橫線標(biāo)出錯(cuò)誤所在行并給出修改意見。#include template class Aprivate:T x,y,s;public:A(T a,T b)x=a,y=b;s=x+y;void show()coutx+y=sendl;void main() A add(10,100);add.show();答案: 修改A add(10,100);解析A add(10,100);類模板的使用,參數(shù)實(shí)例化后生成模板類。用類模板定義對(duì)象時(shí)要指定參數(shù)類型。4. 生成具有n個(gè)元素的動(dòng)態(tài)數(shù)組。#include void main()int n;cinn;int an;a0=2;couta0endl;答案:int an;生成具有n個(gè)元素的動(dòng)態(tài)數(shù)組,要使用new,所以int an;錯(cuò)誤。修改int *a=new intn;5. #include class Aint i;public:virtual void fun()=0;A(int a)i=a;class B:public Aint j;public:void fun()coutB:fun()n; B(int m,int n=0):A(m),j(n);void main()A *pa;B b(7);pa=&b;答案:B(int m,int n=0):A(m),j(n)因?yàn)榛愂浅橄箢悾荒鼙粚?shí)例化,所以在派生類中不能調(diào)用初始化基類對(duì)象。所以B(int m,int n=0):A(m),j(n)錯(cuò)誤,刪去A(m)。修改B(int m,int n=0):j(n)四、完成程序題(本大題共5小題,每小題4分,共20分)1. 在下面程序橫線處填上適當(dāng)字句,以使該程序執(zhí)行結(jié)果為:50 4 34 21 100 7.1 8.1 9.1 10.1 11.1#include template void f (_)_;for (int i=0;in/2;i+)t=ai, ai=an-1-i, an-1-i=t;void main ()int a5=10,21,34,4,50;double d6=11.1,10.1,9.1,8.1,7.1;f(a,5);f(d,6);for (int i=0;i5;i+)cout ai ;cout endl;for (i=0;i6;i+)cout di ;cout endl;答案:T a,int n,T t=0;解析不同的數(shù)據(jù)類型的調(diào)用,使用了模板。f函數(shù)增加t變量,因?yàn)閷?shí)參類型不同,所以t的類型應(yīng)該是T類型的。2. 完成下面類中成員函數(shù)的定義。#include #include class Arrprotected:float *p;int n;/數(shù)組大小(元素個(gè)數(shù))public:Arr(int sz=10) n=sz;p=new floatn;Arr(void)_int Getn(void) constreturn n;float & operator(int i)_void Print();void Arr:Print()int i;for(i=0;iGetn();i+)if (i%10=0)cout endl;coutsetw(6)pi;coutendl;void main()Arr a(20);for (int i=0;ia.Getn();i+)ai=i* 2;a.Print();答案:delete p;,return pi;解析在析構(gòu)函數(shù)中釋放對(duì)象空間。第二個(gè)是對(duì)運(yùn)算符的重載,函數(shù)返回類型是實(shí)型,形參i,取得下標(biāo)為i的元素的值。3. 下面是一個(gè)輸入半徑,輸出其面積和周長(zhǎng)的C+程序,在下劃線處填上正確的語(yǔ)句。#include _;_;void main()double rad;coutrad;double l=2.0*pi*rad;double s=pi*rad*rad;coutn The long is:lendl;coutThe area is:sendl;答案:using namespace std,#define pi 3.14159解析進(jìn)行輸入或輸出要引入iostream, 所以u(píng)sing namespace std;從標(biāo)點(diǎn)看沒有分號(hào),所以使用宏定義,#define pi 3.14159。4. 在下劃線處填上缺少的部分。#include class Samppublic:void Setij(int a,int b)i=a,j=b;Samp()coutDestroying.iendl;int GetMuti()return i*j;protected:int i;int j;int main()Samp *p;p=new Samp5;if(!p)coutAllocation errorn;return 1;for(int j=0;j5;j+)pj.Setij(j,j);for(int k=0;k5;k+)coutMutik is:pk._endl;_return 0;答案:GetMuti(),deletep;解析調(diào)用只有一個(gè)有返回值的成員函數(shù),釋放對(duì)象數(shù)組所占的空間。5. 請(qǐng)?jiān)谙旅娉绦虻臋M線處填上適當(dāng)內(nèi)容,以使程序完整,并使程序的輸出為:11,1013,12#include class Aint a;public:A(int i=0)a=i;int Geta()return a;void show()coutaendl;class BA a;int b;public:B(int i,int j)_void show()couta.Geta(),bendl;void main()B b2=B(10,11),B(12,13);for(int i=0;i2;i+)_答案::a(j),b(i),bi.show();解析在構(gòu)造函數(shù)中對(duì)數(shù)據(jù)成員初始化,從結(jié)果先輸出a,后b,所以對(duì)aj,b=i;在循環(huán)中輸出成員,調(diào)用show成員。五、程序分析題(本大題共2小題,每小題5分,共10分)1. 給出下面程序輸出結(jié)果。#include class Baseprivate:int Y;public:Base(int y=0) Y=y;coutBase(y)n;Base() coutBase()n;void print() cout Y ;class Derived:public Baseprivate:int Z;public:Derived (int y, int z):Base(y)Z=z;coutDerived(y,z)n;Derived() coutDerived()n;void print()Base:print();coutZendl;void main()Derived d(10,20);d.print();答案:Base(10)Der

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論