c 面向對象程序設計試題和答案匯總_第1頁
c 面向對象程序設計試題和答案匯總_第2頁
c 面向對象程序設計試題和答案匯總_第3頁
c 面向對象程序設計試題和答案匯總_第4頁
c 面向對象程序設計試題和答案匯總_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、一、填空題(每空1分,共14分)1、觀看以下程序:classpointpublic:voidshow(cout”point”;voidmain(pointp1;point*p;p=&p1;/通過對象p1訪問show函數(shù)/通過指針p訪問show函數(shù)2、在C+類中可以包含、和三種具有不同訪問控制權的成員。3、定義類時,在類頭中將使用關鍵字來表示類定義的開始。4、如果一個類中至少有一個純虛函數(shù),則該類稱為。5、C+類的組成包括數(shù)據(jù)成員和,友元(是、不是)該類的成員函數(shù)。6、友員函數(shù)是用關鍵字修飾的非成員函數(shù)。(A)公有成員(B)保護成員7、若有:inti;int&j=i;i=10;j=i+1;則i=

2、,j=。8、new的功能是,delete的功能是二、選擇題(每小題1.5分,共30分1、下列特性中不是面向對象程序設計語言所特有的是()。數(shù)據(jù)封裝(B)繼承(C)多態(tài)性(D)模板2、()是給變量取一個別名,它引入了變量的同意詞。指針(B)引用(C)枚舉(D)結構3、類成員的訪問權限中,()只能被本類的成員函數(shù)和其友元函數(shù)訪問(A)share(B)public(C)private(D)protected4、關于構造函數(shù),下列說法不正確的是()。構造函數(shù)名字和類名相同構造函數(shù)在創(chuàng)建對象時自動執(zhí)行構造函數(shù)無任何函數(shù)返回類型構造函數(shù)有且只有一個5、派生類可以訪問其基類的()。(C)私有派生(D)公有和

3、保護成員6、下列關于運算符重載的描述中,錯誤的是()。(A)運算符重載不可以改變操作數(shù)的個數(shù)(B)運算符重載不可以改變運算符的功能(C)運算符重載不可以改變結合方向(D)運算符重載不可以改變運算優(yōu)先級7、C+語言是從早期的C語言逐漸發(fā)展演變而來的與C語言相比,它在求解問題方法上進行的最大改進是()(A)面向過程(B)面向對象(C)安全性(D)復用性8、對于類中定義的成員,其隱含訪問權限為()。ApublicBprotectedCprivateDstatic9、下面有關重載函數(shù)的說法中正確的是()(A)重載函數(shù)必須具有不同的返回值類型;(B)重載函數(shù)形參個數(shù)必須不同;(C)重載函數(shù)必須有不同的形

4、參列表(D)重載函數(shù)名可以不同;10、有如下的對類“CSmple”的說明,其中()是錯誤的。classCSampleAinta=23;BCSample(;public:CCSample(intval;DCSample(;11、在inta=3,int*p=&a;中,*p的值是(A.變量a的地址值B.無意義C.變量p的地址值D.312、每個類()構造函數(shù)。(A)只能有一個(B)只可有公有的(C)可以有多個(D)只可有缺省的13、在一個類中可以對一個操作符進行()重載。(A)1種(B)2種以下(C)3種以下(D)多種14、在公有繼承的情況下,基類非私有成員在派生類中的訪問權限()(A)受限制(B)保

5、持不變(C)受保護(D)不受保護15、應在下列程序劃線處填入的正確語句是()#includeclassBasepublic:voidfun(coutBase:fun;classDerived:publicBasevoidfun(/顯示調用基類的函數(shù)fun(coutDerived:funfun(;16、執(zhí)行下面的程序將輸出()#includeclassBASEcharc;public:BASE(charn:c(nvirtualBASE(cout;classDERIVED:publicBASEcharc;public:DERIVED(charn:BASE(n+1,c(nDERIVED(cout;i

6、ntmain(DERIVEDa(X;return0;(A)XY(B)YX(C)X(D)Y17、下面描述中,表達錯誤的是()公有繼承時基類中的public成員在派生類中仍是public的公有繼承是基類中的private成員在派生類中仍是private的公有繼承時基類中的protected成員在派生類中仍是protected的私有繼承時基類中的public成員在派生類中是private的18、定義析構函數(shù)時,應該注意()(A)其名與類名完全相同(B)返回類型是void類型(C)無形參,也不可重載(D)函數(shù)體中必須有delete語句19、對于在類中定義的靜態(tài)數(shù)據(jù)成員,下面正確的說法是()該類的每個對

7、象中都有一個靜態(tài)數(shù)據(jù)成員對象創(chuàng)建時產(chǎn)生在類外進行初始化既可以在類外初始化,也可以在類內(nèi)初始化20、C+中聲明常量的關鍵字是()。A.constB.externC.publicD.enum三、改錯題(每處2分,共6分1、使用VC6打開考生文件夾下的工程projl,此工程包含一個源程序文件main.cpp,但該程序運行有問題,請改正main函數(shù)中的錯誤,使程序的輸出結果為:member=0member=5menber=10源程序文件main.cpp清單如下:#includeclassMyClasspublic:MyClass(intimember=i;voidSetMember(intmmembe

8、r=m;intGetMember(constreturnmenber;voidprint(contcoutmember=private:intmember;voedmain(MyClassobj1;/更正obj1.print(;MyClassobj2(3;obj1.member=5;/更正MyClass.SetMember(10;/更正obj1.print(;obj2.print(;四、寫出下列程序的執(zhí)行結果(每小題5分,共20分)1、#includeclassSampleintn;public:Sample(intin=i;friendintadd(Sample&s1,Sample&s2;i

9、ntadd(Sample&s1,Sample&s2returns1.n+s2.n;voidmain(Samples1(10,s2(20;cout 、#include 、#include執(zhí)行結果是:2、#includeintadd(intx,intyreturnx+y+1;doubleadd(doublex,doubleyreturnx+y-1;voidmain(inta=2,b=4;doublec=2.6,d=7.4;cout執(zhí)行結果是:classApublic:intn;classB:virtualpublicA;classC:virtualpublicA;classD:publicB,pu

10、blicCintgetn(returnB:n;voidmain(Dd;d.B:n=10;d.C:n=20;cout執(zhí)行結果是:classmyclassinta,b;staticints;public:myclass(intx,intya=x;b=y;s+;voidprint(coutshow(2)公有、私有、保護(3)class(4)抽象類(5)成員函數(shù)、不是(6)friend(7)11、11(8)動態(tài)申請內(nèi)存空間、釋放由new申請的空間二、選擇題(每小題1.5分,共30分1、D2、B3、C4、D5、D6、B7、B8、C9、C10、A11、D12、C13、D14、B15、C16、A17、B18

11、、C19、C20、A三、改錯題(每錯2分,共6分MyClassobj1(0;obj1.SetMember(5;obj2.SetMember(10;四、寫出下列程序的執(zhí)行結果(每小題5分,共20分)(1)30(5分)(2)79(每個2.5分(3)2020(每個2.5分(4)3(2分)3(2分)3(1分)五、編程題(每題10分、共30分)1、#include#includeclassrectangle/(2分private:intx1,y1,x2,y2;/(2分public:rectangle(intxx1,intyy1,intxx2,intyy2/(1分x1=xx1;y1=yy1;x2=xx2;

12、y2=yy2;intgetarea(/(2分returnabs(x2-x1*(y1-y2;voidmain(rectanglerect1(3,7,8,5;(2分cout分2、(10分#includeclasscar;(1分)classboatprivate:intweight;/(1分public:boat(intw:weight(w/(1分friendinttotalweight(boatb1,carc1;/(2分;classcar/(1分private:intweight;(1分public:car(intw:weight(w;friendinttotalweight(boatb1,car

13、c1;(1分;inttotalweight(boatb1,carc1/(1分returnb1.weight+c1.weight;voidmain(carc1(1000;boatb1(2000;cout分3、(10分#includeclassvehicle/定義汽車類(3分protected:intwheels;/車輪數(shù)floatweight;/重量public:vehicle(intwheels,floatweight;intget_wheels(;floatget_weight(;floatwheel_load(;voidshow(;classcar:publicvehicle/定義小車類(

14、3分intpassenger_load;/載人數(shù)public:car(intwheels,floatweight,intpassengers=4;intget_passengers(;voidshow(;vehicle:vehicle(intwheels1,floatweight1/(1分wheels=wheels1;weight=weight1;intvehicle:get_wheels(returnwheels;floatvehicle:get_weight(returnweight;voidvehicle:show(1分cout車輪:wheels個endl;cout重量:weight公斤endl;car:car(intwheels,floatweight,intpassengers:

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論