




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上姓名: 學(xué)號: 系別: 年級專業(yè): 密封線線_ _ 東莞理工學(xué)院(本科)試卷(A卷)2012 -2013學(xué)年第二學(xué)期面向?qū)ο蟪绦蛟O(shè)計(jì)試卷開課單位: 計(jì)算機(jī)學(xué)院,考試形式:閉卷,允許帶 入場題序一二三四五六總 分得分評卷人 一單項(xiàng)選擇題 (15小題,每小題2分,共30分,請將正確答案填寫在以下對應(yīng)的答題表格中)題號12345678910答案題號1112131415答案1、在類定義的外部,可以被訪問的成員有( )A、所有類成員 B、private的類成員C、public或private的類成員 D、public的類成員 2、下列關(guān)于C+語言類的描述中錯誤的是( ) 。 A
2、 、類用于描述事物的屬性和對事物的操作 B、 類與類之間通過封裝而具有明確的獨(dú)立性 C、 類與類之間必須是平等的關(guān)系,而不能組成層次結(jié)構(gòu) D、 類與類之間可以通過一些方法進(jìn)行通信和聯(lián)絡(luò)3、下列數(shù)組定義中,不正確的是( )。 A、 int x13; B、 int x22=1,2,3; C、 int x2=1,2,3,4 ; D、 int x2=1,2,3,4 4、定義析構(gòu)函數(shù)時,應(yīng)該注意:( )A、其名與類名完全相同 B、返回類型是void類型C、無形參,也不可重載 D、函數(shù)體中必須有delete語句5、下列函數(shù)中,正確的遞歸函數(shù)是( )。 A 、int Fun(int n) if(n<1
3、) return 1; else return n*Fun(n+1); B 、int Fun(int n) if (abs(n)<1) return 1; else return n*Fun(n/2); C 、int Fun(int n) if(n>1) return 1; else return n*Fun(n*2); D、 int Fun(int n) if(n>1) return 1; else return n*Fun(n-1); 6、在C+中編譯器所生成的文件的擴(kuò)展名為( )答案修改過A、 .cpp B、 .obj C、 .lib D、 .exe7、派生類的對象對它
4、的基類成員中的( )是可以訪問A、公有繼承的公有成員 B、公有繼承的私有成員 C、公有繼承的保護(hù)成員D、私有繼承的公有成員8. C+設(shè)置虛基類的目的是( )A、消除二義性 B、簡化程序 C、提高運(yùn)行效率 D、減少目標(biāo)代碼9. 以下關(guān)于this指針的敘述中正確的是:( )A、任何與類相關(guān)的函數(shù)都有this指針; B、類的成員函數(shù)都有this指針;C、類的友員函數(shù)都有this指針; D、類的非靜態(tài)成員函數(shù)才有this指針;10實(shí)現(xiàn)運(yùn)行時的多態(tài)性采用( )A、重載函數(shù) B、構(gòu)造函數(shù) C、析構(gòu)函數(shù) D、虛函數(shù)11、若有int a10=0,1,2,3,4,5,6
5、,7,8,9,*p=&a5;則( ) 不是對a數(shù)組元素的正確引用(其中0i<10)A、pi B、 *(*(p+i) ) C、ap-a D、* (&ai)12、int Func(int,int);不可與下列哪個函數(shù)構(gòu)成重載( )A、int Func(int,int,int); B、double Func(int,int);C、double Func(double,double); D、double Func(int,double);13、局部變量可以隱藏全局變量,那么在有同名全局變量和局部變量的情形時,可
6、以用( )提供對全局變量的訪問。 【內(nèi)層隱藏外層】 A 、域運(yùn)算符 B、指針 C、重載 D、引用 14下列描述中,正確的是:( ) A、所有的運(yùn)算符號都可以重載。 B、基類類型的指針可以指向子類,子類類型的指針也可以指向基類?!局挥衟ublic繼承前一個說法才成立】姓名: 學(xué)號: 系別: 年級專業(yè): 密封線線 C、可以在類體內(nèi)對靜態(tài)數(shù)據(jù)成員進(jìn)行初始化。【必須類外初始化】 D、動態(tài)聯(lián)編要滿足兩個條件:被調(diào)用的成員函數(shù)是虛函數(shù);用指針或引用調(diào)用虛函數(shù)。15、下面類的定義,有( )處錯誤。 class MyClass private: int i=0; 2 public: void MyClass(
7、); 3 MyClass(int Value); 4 1A、 1 B、 2 C 、3 D、 4二填空題(每題2分,共20分)1、static加在局部變量定義前,改變局部變量的生存期但不改變它 作用域 的。2. 類的私有成員只能被它的成員函數(shù)和 友元 函數(shù)訪問。3. 一個抽象類的派生類可以實(shí)例化的必要條件是實(shí)現(xiàn)了所有的 純虛函數(shù) 。4、假定AB為一個類,有類AB的兩個對象a1,a2;則執(zhí)行語句AB *a10=&a1,&a2;時系統(tǒng)自動調(diào)用該類的構(gòu)造函數(shù)的次數(shù)為 0 。5、通過C+語言中類的 繼承和派生 機(jī)制,可以擴(kuò)充和完善已有類以適應(yīng)新的需求。【答案修改過】6. 若在類的定義體中
8、給出了一個成員函數(shù)的完整定義,則該函數(shù)屬于 內(nèi)聯(lián)函數(shù) 。7. 不同對象可以調(diào)用相同名稱的函數(shù),但可導(dǎo)致完全不同的行為的現(xiàn)象稱為 多態(tài) 。8. 對象的核心概念就是通常所說的 繼承 、 封裝 和多態(tài)性 。9. 在一個類中可以定義 1 個析構(gòu)函數(shù)。10、若只需要通過一個成員函數(shù)讀取數(shù)據(jù)成員的值,而不需要修改它,則應(yīng)在函數(shù)頭的后面加上 const 關(guān)鍵字。 三判斷題,對的打T錯的打F。(5小題,每小題2分,共10分)1. 函數(shù)形參的作用域是該函數(shù)的函數(shù)體。( )2. 純虛函數(shù)必須在抽象類中,所以抽象類中的成員函數(shù)必須是純虛函數(shù)。(× )3. 派生類中至少包含了它的所有基類的成員,在這些成員中
9、可能有的是不可訪問。( )答案修改過4. 可以在類的構(gòu)造函數(shù)中對靜態(tài)數(shù)據(jù)成員進(jìn)行初始化。(× )5. 構(gòu)造函數(shù)和析構(gòu)函數(shù)都可以定義為虛函數(shù)。(×)。 四程序填空(每題6分,共18分)根據(jù)程序的功能描述,將程序下劃線空白處內(nèi)容補(bǔ)充完整(每空白3分)1. 閱讀下面是一段關(guān)于類的派生的程序,請完成填空。/Point.h#ifndef _POINT_H#define _POINT_Hclass Point public:void initPoint(float x = 0, float y = 0) this->x = x; this->y = y;void move(
10、float offX, float offY) x += offX; y += offY; float getX() const return x; float getY() const return y; private:float x, y;#endif /_POINT_H/Rectangle.h#ifndef _RECTANGLE_H#define _RECTANGLE_H#include "Point.h"class Rectangle: private Point public:void initRectangle(float x, float y, float
11、w, float h) this->x = x;this->y= y; 姓名: 學(xué)號: 系別: 年級專業(yè): 密封線線this->w = w;this->h = h;void move(float offX, float offY) Point:move(offX,offY);float getH() const return h; float getW() const return w; private:float w, h;#endif /_RECTANGLE_H#include <iostream>#include <cmath>using
12、namespace std;int main() Rectangle rect;rect.initRectangle(2, 3, 20, 10);rect.move(3,2); cout << "The data of rect(x,y,w,h): " << endl;<< rect.getW() << ", "<< rect.getH() << endl;return 0;2. 以下程序是定義一個計(jì)數(shù)器類counter,對其重載運(yùn)算符“+”,請?zhí)羁铡?class counter p
13、rivate: int n; public: counter() n=0; counter(int i)n=i; counter 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();3.下面是動態(tài)創(chuàng)建一個8x9x8的三維數(shù)組的一段程
14、序,請按提示完成填空。#include <iostream>using namespace std;int main() float *cp=new float*8;/創(chuàng)建符合題目要求的指針并初始化 for(int k=0;k<8;k+) cpk=new float *9;for(int m=0;m<8;m+)for(int n=0;n<9;n+) cpmn=new float 8; float (*cp)98 = new float898 ;/兩種方法都可以,具體看填空的地方有多大 for (int i = 0; i < 8; i+) for (int j
15、 = 0; j < 9; j+) for (int k = 0; k < 8; k+) *(*(*(cp + i) + j) + k) =static_cast<float>(i * 100 + j * 10 + k); for ( i = 0; i < 8; i+) for (int j = 0; j < 9; j+) for (int k = 0; k < 8; k+)cout << cpijk << " "cout << endl;cout << endl;delete cp ;
16、/釋放指針指向的空間return 0;五、程序執(zhí)行(每題5分,共10分)閱讀下面的程序,并分別寫出程序執(zhí)行的完整輸出結(jié)果。1. 程序1#include <iostream> using namespace std; class base public: static int n; base(int x) n=x; virtual void set(int m) n = m; cout << n <<' ' ; int base:n=0; class deriveA:public base public: deriveA(int x):base
17、(x) void set(int m) n += m; cout << n <<' ' ; class deriveB:public base 姓名: 學(xué)號: 系別: 年級專業(yè): 密封線線 public: deriveB(int x):base(x) void set(int m) n +=m; cout <<n << ' ' ; int main() deriveA dl(0); deriveB d2(1); base *pbase; pbase = &dl; pbase->set(1); pbas
18、e->base:set(0); pbase = &d2; pbase->set(1); pbase->base:set(3);cout<<endl;return 0;輸出結(jié)果:2 0 1 32. 程序2#include <iostream>using namespace std;class Base1 public:int i;Base1(int x) i=x;cout << "Constructing Base1 " << i << endl; ;class Base2: public
19、Base1 public:Base2(int j): Base1(j) cout << "Constructing Base2 " << j << endl; ;class Base3 public:Base3() cout << "Constructing Base3 *" << endl; ;class Derived: public Base2, public Base3 public:int h;Derived(int a, int b, int c, int d): member2(d
20、), member1(c), Base2(b)h=a; private: Base1 member1;Base2 member2;Base3 member3;int main() Derived obj(1, 2, 3, 4);return 0;輸出結(jié)果:Constructing Base1 2Constructing Base2 2Constructing Base3 *Constructing Base1 3Constructing Base1 4Constructing Base2 4Constructing Base3 *六、程序設(shè)計(jì)(12分)定義一個抽象類Stereo,函數(shù)Volum
21、e為純虛函數(shù),用來計(jì)算體積。由抽象類分別派生出立方體Cube類、球體Sphere類、圓柱體Cylinder類,并求其體積(其中球體的體積公式為 V=4/3*PI*R*R*R)。各立體形狀的相關(guān)數(shù)據(jù)成員(其中:r代表半徑,l代表長度,w代表寬度,h代表高度)屬性都為private,并且通過各類的構(gòu)造函數(shù)設(shè)置。total是一個通用的,用以求不同立體形狀的體積總和的全局函數(shù)。1)定義和實(shí)現(xiàn)各個類,給出相關(guān)的成員數(shù)據(jù)、構(gòu)造函數(shù)和必要的成員函數(shù)即可。(4分,每個類1分)2)定義和實(shí)現(xiàn)total函數(shù),注意該函數(shù)為全局函數(shù)不是某各類的成員函數(shù)。 (4分)3)編寫main函數(shù)進(jìn)行測試,功能要求如下:a、用基類指針數(shù)組,使它的每一個元素指向一個派生類的對象,并且所有形狀立方體對象都進(jìn)行內(nèi)存動態(tài)分配和回收(即用new和delete操作符);b、主函數(shù)內(nèi)調(diào)用total輸出所有形狀立方體的體積之和。(4分)注:主函數(shù)中用到的構(gòu)造函數(shù)和total函數(shù)如下 Cube(5.0,5.0,8.0); /實(shí)參為立方體的長、寬、高。 Sphere(6.0); /實(shí)參為球體的半徑。 Cylinder(5.0,8.0); /實(shí)參為圓柱體的底面半徑、高。 total(s,3);/ 實(shí)參s為基類指針數(shù)組,3為數(shù)組的大小。#include<iostream>using namespace std;clas
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 昆明冶金高等專科學(xué)?!读孔恿W(xué)(Ⅱ)》2023-2024學(xué)年第二學(xué)期期末試卷
- 河北民族師范學(xué)院《生物醫(yī)學(xué)傳感器》2023-2024學(xué)年第二學(xué)期期末試卷
- 湖南交通職業(yè)技術(shù)學(xué)院《國際商務(wù)綜合模擬與實(shí)訓(xùn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 濟(jì)南幼兒師范高等??茖W(xué)?!吨兴幮滤幯芯颗c開發(fā)》2023-2024學(xué)年第二學(xué)期期末試卷
- 上海商學(xué)院《高級英語(2)》2023-2024學(xué)年第二學(xué)期期末試卷
- 外交學(xué)院《企業(yè)案例分析》2023-2024學(xué)年第二學(xué)期期末試卷
- 華東師范大學(xué)《安裝工程造價軟件應(yīng)用》2023-2024學(xué)年第一學(xué)期期末試卷
- 手機(jī)械設(shè)備買賣合同協(xié)議書
- 板材木方購銷合同
- 企業(yè)采購物資長期供貨合同
- 醫(yī)學(xué)課件慢性胰腺炎2
- CMOS光電圖像傳感器課件
- HG∕T 3781-2014 同步帶用浸膠玻璃纖維繩
- 【萬向傳動軸設(shè)計(jì)11000字(論文)】
- 基于BOPPPS模型的微觀經(jīng)濟(jì)學(xué)網(wǎng)課教學(xué)設(shè)計(jì)探析-以市場結(jié)構(gòu)理論的教學(xué)為例
- 體檢培訓(xùn)系列課程(五)-體檢套餐選擇與制定
- 子宮內(nèi)膜癌-醫(yī)師教學(xué)查房
- 2024年保密教育線上培訓(xùn)考試題目及答案【全優(yōu)】
- 2024年4月自考00149國際貿(mào)易理論與實(shí)務(wù)試題及答案含解析
- DZ∕T 0214-2020 礦產(chǎn)地質(zhì)勘查規(guī)范 銅、鉛、鋅、銀、鎳、鉬(正式版)
- 營銷現(xiàn)場作業(yè)安全工作規(guī)程
評論
0/150
提交評論