面向?qū)ο蟪绦蛟O(shè)計(jì) 試卷3_第1頁(yè)
面向?qū)ο蟪绦蛟O(shè)計(jì) 試卷3_第2頁(yè)
面向?qū)ο蟪绦蛟O(shè)計(jì) 試卷3_第3頁(yè)
面向?qū)ο蟪绦蛟O(shè)計(jì) 試卷3_第4頁(yè)
面向?qū)ο蟪绦蛟O(shè)計(jì) 試卷3_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、一、選擇題(每題2.5分,共30分)1、關(guān)鍵字( )說(shuō)明對(duì)象或變量初始化后不會(huì)被修改。 A、static B、public C、const D、inline2、一個(gè)類可以( )構(gòu)造函數(shù)。 A、有且僅有一個(gè) B、有多個(gè) C、有零個(gè) D、以上都不是3、內(nèi)聯(lián)函數(shù)執(zhí)行起來(lái)比標(biāo)準(zhǔn)函數(shù)( )。A、更慢 B、不確定 C、次數(shù)更多 D、更快4、默認(rèn)參數(shù)的值由( )提供。 A、該函數(shù) B、調(diào)用程序 C、 上述二者 D、 以上都不是5、靜態(tài)數(shù)據(jù)成員的生存期( )。A、與整個(gè)程序相同 B、 不長(zhǎng)于類的生存期 C、取決于創(chuàng)建的對(duì)象數(shù) D、 以上都不是6、已知在一個(gè)類體中包含如下函數(shù)原型: Volume operato

2、r-(Volume)const,下列關(guān)于這個(gè)函數(shù)的敘述中,錯(cuò)誤的是( )。A、這是運(yùn)算符-的重載運(yùn)算符函數(shù) B、這個(gè)函數(shù)所重載的運(yùn)算符是一個(gè)一元運(yùn)算符C、這是一個(gè)成員函數(shù) D、這個(gè)函數(shù)不改變類的任何數(shù)據(jù)成員的值7、通常的拷貝初始化構(gòu)造的參數(shù)是( )。A、某個(gè)對(duì)象名 B、某個(gè)對(duì)象的成員名C、某個(gè)對(duì)象的引用名 D、某個(gè)對(duì)象的指針名8、設(shè)置虛基類的目的是( )。A、簡(jiǎn)化程序 B、消除二義性 C、提高運(yùn)行效率 D、減少目標(biāo)代碼9、派生類的對(duì)象對(duì)它的基類成員中( )是可以訪問(wèn)的。A、公有繼承的公有成員 B、公有繼承的私有成員C、公有繼承的保護(hù)成員 D、私有繼承的公有成員10、作用域運(yùn)算符的功能是( )。

3、A、標(biāo)識(shí)作用域的級(jí)別的 B、指出作用域的范圍的C、給出作用域的大小的 D、標(biāo)識(shí)某個(gè)成員是屬于哪個(gè)類的11、類B是類A的公有派生類,類A和類B中都定義了虛函數(shù)func( ),p是一個(gè)指向類A對(duì)象的指針,則p->A:func( )將( )。A、調(diào)用類A中的函數(shù)func( ) B、調(diào)用類B中的函數(shù)func( )C、根據(jù)p所指的對(duì)象類型而確定調(diào)用類A中或類B中的函數(shù)func( )D、既調(diào)用類A中函數(shù),也調(diào)用類B中的函數(shù)12、下列關(guān)于虛函數(shù)的說(shuō)明中,正確的是( )。A、從虛基類繼承的函數(shù)都是虛函數(shù) B、虛函數(shù)不得是靜態(tài)成員函數(shù)C、只能通過(guò)指針或引用調(diào)用虛函數(shù) D、抽象類中的成員函數(shù)都是虛函數(shù)二、填

4、空(每題2分,共20分)1、類的構(gòu)造函數(shù)_(可以/不可以)是虛函數(shù)。2、面向?qū)ο蟪绦蛟O(shè)計(jì)有四個(gè)主要特點(diǎn),即抽象、封裝、繼承和_。3、在C+類中可以包含公有、私有和_三種具有不同訪問(wèn)控制權(quán)的成員。4、定義類時(shí),在類頭中將使用關(guān)鍵字_來(lái)表示類定義的開(kāi)始。5、如果一個(gè)類中至少有一個(gè)純虛函數(shù),則該類稱為_(kāi)。6、C+中動(dòng)態(tài)申請(qǐng)內(nèi)存空間,需要用_關(guān)鍵字實(shí)現(xiàn)。7、在表達(dá)式 x+y中, + 是作為成員函數(shù)重載的運(yùn)算符,則operator+ 有_個(gè)參數(shù)。8、靜態(tài)數(shù)據(jù)成員初始化與一般數(shù)據(jù)成員初始化_(相同/不同)。9、用流對(duì)象的成員函數(shù)控制輸出格式時(shí),用于設(shè)置字段寬度的流成員函數(shù)的名稱是width,與之作用相同的

5、控制符名稱是_。10、程序填空:class Base public: void fun()cout<<"Base:fun"<<endl; ;class Derived:public Base void fun() _ /顯示調(diào)用基類的函數(shù)fun() cout<<"Derived:fun"<<endl; ;三、讀程序?qū)懡Y(jié)果(每小題5分,共25分)1. class counter private: int n; public: counter() n=0; counter(int i)n=i; counter

6、operator + (counter c)/運(yùn)算符重載函數(shù) counter t; t.n=n+c.n; return t; void disp() cout<<"n="<<n<<endl; ; void main() counter c1(5),c2(10),c3; c3=c1+c2; c1.disp(); c2.disp(); c3.disp(); 2. void fun(int &x, int y) int t=x; x=y; y=t; int main( ) int a2 = 23, 42; fun(a1,a0); std

7、:cout<<a0<<","<<a1<<std:endl; return 0; 3. class A public: A() cout<<"A" ; class B public: B() cout<<"B" ; class C : public A B b; public: C() cout<<"C" ; int main( ) C obj; return 0; 4. class teacher; class student st

8、ring name; public: student(string s1)name=s1; friend void print(student &,teacher &); ; class teacher string name; public: teacher(string s2)name=s2; friend void print(student &,teacher &); ; void print(student &a,teacher &b) cout<<"the student is:"<<a.n

9、ame<<endl; cout<<"the teacher is:"<<<<endl; void main() student s("Li Hu"); teacher t("Wang Ping"); print(s,t); 5. class Base public:virtual void fun() cout<<1; ;class Derived: public Base public: void fun( ) cout<<2; ;void main

10、( ) Base *p= new Derived; p->fun( ); delete p;四、程序設(shè)計(jì)題(第1題10分,第2題15分,共25分)1、定義一個(gè)Dog 類,包含的age、weight等屬性,以及對(duì)這些屬性操作的方法。要求:A) 設(shè)計(jì)Dog 類構(gòu)造函數(shù)及Getage( )、SetWeight( )函數(shù);B) 編寫(xiě)主函數(shù)構(gòu)造Dog 類對(duì)象進(jìn)行測(cè)試。2、定義一個(gè)shape抽象類,派生出Rectangle類和Circle類,計(jì)算各派生類對(duì)象的面積。要求:A)抽象出一個(gè)基類shape并在其中說(shuō)明一個(gè)虛函數(shù)用來(lái)求面積;B)定義派生類長(zhǎng)方形(數(shù)據(jù)成員為長(zhǎng)、寬)、圓形(數(shù)據(jù)成員為半徑);C

11、)編寫(xiě)主函數(shù)并測(cè)試。濱州學(xué)院20112012學(xué)年第二學(xué)期期末考試計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)(本)2011級(jí)面向?qū)ο蟪绦蛟O(shè)計(jì)(A)標(biāo)準(zhǔn)答案 一、選擇題(每題2.5分,共30分)1-6 C B D C A B 7-12 C B A D A B二、填空(每題2分,共20分) 1.可以 2.多態(tài)3.保護(hù) 4.class 5.抽象類 6.new 7.1 8.不同9.setw 10.Base:fun();三、讀程序?qū)懡Y(jié)果(每小題5分,共25分)1. n=5n=10n=152. 23,23 3. ABC4. the student is Li Huthe student is Wang Ping5. 2四、程序設(shè)

12、計(jì)題(第1題10分,第2題15分,共25分)閱卷說(shuō)明:程序設(shè)計(jì)題的方法比較多,只要學(xué)生程序能夠正確解決問(wèn)題即可得分,不必局限于標(biāo)準(zhǔn)答案給出的方法。1.(10分)評(píng)分標(biāo)準(zhǔn):程序包括正確Dog類定義、構(gòu)造函數(shù)及成員函數(shù)實(shí)現(xiàn)(7分)、測(cè)試Dog類對(duì)象的使用(3分)兩個(gè)主要部分,只要結(jié)果正確,語(yǔ)法無(wú)誤即可得分,否則酌情扣分。class Dogpublic:Dog (int initialAge = 0, int initialWeight = 5);int GetAge() return itsAge; int GetWeight () return itsWeight;void SetWeight

13、(int weight) itsitsWeight = weight; private:int itsAge, itsWeight;Dog:Dog(int initialAge, int initialWeight) itsAge = initialAge;itsWeight = initialWeight;int main()Dog Jack(2,10);cout << "Jack is a Dog who is " ;cout << Jack.GetAge() << " years old and"cout <

14、;< Jack.GetWeight() << " pounds weight.n"Jack.SetWeight(20);cout << "Now Jack is " ;cout << Jack.GetAge() << " years old and"cout << Jack.GetWeight() << " pounds weight."return 0;2.(15分)評(píng)分標(biāo)準(zhǔn):程序包括正確Shape類定義(3分)、Rectangle類定

15、義及成員函數(shù)實(shí)現(xiàn)(4分)、Circle類定義及成員函數(shù)實(shí)現(xiàn)(4分)、測(cè)試程序?qū)崿F(xiàn)運(yùn)行時(shí)多態(tài)(4分)四個(gè)主要部分,只要結(jié)果正確,語(yǔ)法無(wú)誤即可得分,否則酌情扣分。#include<iostream>using namespace std;class Shapepublic:virtual void Area()=0;class Rectangle:public Shapepublic:Rectangle(double w=0,double h=0)width=w,height=h;void Area()cout<<width*height<<endl;protected:double width, height;class Circle:pu

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論