




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第一部分 選擇題 (共20分)一、單項(xiàng)選擇題(本大題共10小題,每小題2分,共20分) 1.在C+中,函數(shù)原型不能標(biāo)識(shí)( D ) A.函數(shù)的返回類型 B.函數(shù)參數(shù)的個(gè)數(shù) C.函數(shù)參數(shù)類型 D.函數(shù)的功能 p108有敘述2.在C+程序中,對(duì)象之間的相互通信通過( B ) ? A.繼承實(shí)現(xiàn) B.調(diào)用成員函數(shù)實(shí)現(xiàn) C.封裝實(shí)現(xiàn) D.函數(shù)重載實(shí)現(xiàn)3.對(duì)于任意一個(gè)類,析構(gòu)函數(shù)的個(gè)數(shù)最多為( B ) A.0 B.1 C.2 D.3P288 析構(gòu)函數(shù)不接受參數(shù),也不返回?cái)?shù)值。類只可能有一個(gè)析構(gòu)函數(shù),不能進(jìn)行析構(gòu)函數(shù)的重載。4.下面函數(shù)模板定義中不正確的是( A )A.template<class Q&
2、gt; B.template<class Q> QF(Q x) QF(Q x) return Q+x; return x+x; C.template<class T> D.template<class T> TF(T x) TF(T x) return x*x; return x>1;5.友元關(guān)系不能( c A )? A.繼承 B.是類及類的關(guān)系 C.是一個(gè)類的成員函數(shù)及另一個(gè)類的關(guān)系 p316 D.提高程序的運(yùn)行效率6.語句ofstream f(SALARY.DAT,ios:appios:binary);的功能是建立流對(duì)象f,試圖打開文件SALARY
3、.DAT并及之連接,并且( A )A.若文件存在,將文件寫指針定位于文件尾;若文件不存在,建立一個(gè)新文件 B.若文件存在,將其置為空文件;若文件不存在,打開失敗 C.若文件存在,將文件寫指針定位于文件首;若文件不存在,建立一個(gè)新文件 D.若文件存在,打開失?。蝗粑募淮嬖?,建立一個(gè)新文件7.下面說法正確的是( B ) A.內(nèi)聯(lián)函數(shù)在運(yùn)行時(shí)是將該函數(shù)的目標(biāo)代碼插入每個(gè)調(diào)用該函數(shù)的地方B.內(nèi)聯(lián)函數(shù)在編譯時(shí)是將該函數(shù)的目標(biāo)代碼插入每個(gè)調(diào)用該函數(shù)的地方 C.類的內(nèi)聯(lián)函數(shù)必須在類體內(nèi)定義 D.類的內(nèi)聯(lián)函數(shù)必須在類體外通過加關(guān)鍵字inline定義8.可以用p.a的形式訪問派生類對(duì)象p的基類成員a,其中a是
4、( D ) A.私有繼承的公有成員 B.公有繼承的私有成員 C.公有繼承的保護(hù)成員 D.公有繼承的公有成員9.在公有派生情況下,有關(guān)派生類對(duì)象和基類對(duì)象的關(guān)系,不正確的敘述是( A ) A.派生類的對(duì)象可以賦給基類的對(duì)象 B.派生類的對(duì)象可以初始化基類的引用 C.派生類的對(duì)象可以直接訪問基類中的成員 D.派生類的對(duì)象的地址可以賦給指向基類的指針10.對(duì)于類定義 class A public: virtual void func1( ) void func2( ) class B:public A public: void func1( )cout<<class B func 1&l
5、t;<end1; virtual void func2( )cout<<class B func 2<<end1; 下面正確的敘述是( C ) A. A:func2( )和B:func1( )都是虛函數(shù) B. A:func2( )和B:func1( )都不是虛函數(shù) C. B:func1( )是虛函數(shù),而A:func2( )不是虛函數(shù) D. B:func1( )不是虛函數(shù),而A:func2( )是虛函數(shù)第二部分 非選擇題 (共80分)二、填空題(本大題共10小題,每小題2分,共20分) 11.定義類的動(dòng)態(tài)對(duì)象數(shù)組時(shí),系統(tǒng)只能夠自動(dòng)調(diào)用該類的拷貝構(gòu)造函數(shù)對(duì)其進(jìn)行初始化
6、。12.無論是什么繼承方式,派生類的成員不能訪問基類private屬性的成員。13.表達(dá)式cout<<end1還可表示為_cout<<” /n ”;_。14.基類的公有成員在派生類中的訪問權(quán)限由繼承方式?jīng)Q定。15.C+支持的兩種多態(tài)性分別是靜態(tài)多態(tài)性和動(dòng)態(tài)多態(tài)性。16.C+中語句const char * const p=hello;所定義的指針p和它所指的內(nèi)容都不能被修改。17.假定AB為一個(gè)類,則語句AB(AB&x);為該類_構(gòu)造?_函數(shù)的原型說明。18.說明常成員函數(shù)時(shí),字const寫在成員函數(shù)的函數(shù)的參數(shù)表和函數(shù)體之間19.在C+中,訪問一個(gè)對(duì)象的成員所用
7、的運(yùn)算符是指針,訪問一個(gè)指針?biāo)赶虻膶?duì)象的成員所用的運(yùn)算符是this指針。20.派生類從一個(gè)或多個(gè)以前定義的該類的基類繼承數(shù)據(jù)和函數(shù)。三、改錯(cuò)題(本大題共5小題,每小題2分,共10分)21.指出下面程序段中的錯(cuò)誤,并說明出錯(cuò)原因。class A int a,b;public: A(int aa,int bb) a=aa;b=bb;A x(2,3),y(4); y(4,0)22.指出并改正下面利用類模板的對(duì)象定義中的錯(cuò)誤。template <class T>class Tany T x,y;public: Tany(T a,T b)x=a,y=b; T sum( )return x+
8、y;Tany (int) obj(10,100); 改為Tany<int>23.指出下面程序段中的錯(cuò)誤,并說明出錯(cuò)原因。class one private: int a; public: void func(two&); void func(two &)錯(cuò)誤,不能前向申明class two private: int b; friend void one:func(two&);void one:func(two& r) a=r.b;24.指出下面程序段中的錯(cuò)誤,并說明出錯(cuò)原因。include <iostream.h>class A publ
9、ic: void fun( )cout<<a.fun<<endl;class B public: void fun( )cout<<b.fun<<endl; void gun( )cout<<b.gun<<endl;class C:public A,public B private:int b; public:void gun( )cout<<c.gun<<endl; void hun( )fun( ); 改為void hun( )A:fun( );或B:fun( )25.指出下面程序段中的錯(cuò)誤,并
10、說明出錯(cuò)原因。class Location int X,Y=20; Y=20出錯(cuò),類定義中不能顯式地將類的數(shù)據(jù)成員初始化protected: int zeroX,zeroY; int SetZero(int ZeroX,int ZeroY);private: int length,height;public: float radius; void init(int initX,int initY); int GetX( ); int GetY( );四、完成程序題(本大題共5小題,共20分) 根據(jù)題目要求,完成程序填空。26.在下面橫線處填上適當(dāng)字句,完成類中成員函數(shù)的定義。class A i
11、nt * a; public: A(int aa=0) a=_new int(aa)_;/用aa初始化a所指向的動(dòng)態(tài)對(duì)象 A()_delete a_;/釋放動(dòng)態(tài)存儲(chǔ)空間27.下面是一個(gè)函數(shù)模板,用于計(jì)算兩個(gè)向量的和。在下面橫線處填上適當(dāng)字句,完成函數(shù)模板定義。include <iostream.h>template<class T>T* f(T* a,T* b,int n) T* c=_new Tn_; for(int i=0;i<n;i+) ci=_ai+bi _; return c;void main() int a5=1,2,3,4,5,b5=10,20,3
12、0,40,*p; p=f(a,b,5); for(int i=0;i<5;i+) cout<<pi<<endl;28.下面是一個(gè)用戶口令檢查程序,在橫線處填上適當(dāng)語句完成程序功能。include <iostream.h>include <string.h>_char* PASS=”wolleh”;_/定義由PASS指針?biāo)赶虻目诹顆olleh。void main() char user10;/用于存放輸入的口令 cout<<please input your password:<<endl; _cin>>
13、user;_/輸入口令 if(strcmp(user,PASS)=0) cout<<your password is correct<<endl; else cout<<your password is error<<endl;29.下面是類fraction(分?jǐn)?shù))的定義,其中重載的運(yùn)算符<<以分?jǐn)?shù)形式輸出結(jié)果,例如將三分之二輸出為2/3。在橫線處填上適當(dāng)字句。class fraction int den; /分子 int num; /分母 friend ostream& operator<<(ostream&am
14、p;,fraction);ostream& operator <<(ostream& os,fraction fr) _cout<<den<< ”/ ”<<num<<endl_; return _os_;30.在下面程序橫線處填上適當(dāng)?shù)淖志?,使其輸出結(jié)果為0,56,56。include <iostream.h>class base public: _int_func( )return 0;class derived:public base public: int a,b,c; _void_ setValue
15、(int x,int y,int z)a=x;b=y;c=z; int func( )return(a+b)*c;void main() base b; derived d; cout<<b.func( )<<,; d.setValue(3,5,7); cout<<d.func( )<<,; base& pb=d; cout<<pb.func( )<<end1;五、程序分析題(,每小題5分,共30分) 給出下面各程序的輸出結(jié)果。31.include <iostream.h> void main( ) i
16、nt *a; int *&p=a; int b=10; p=&b; cout<<*a; 輸出為:32.include <iostream.h> template<class T> Tf(T*a,T*b,int n) Ts=(T)0; for(int i=0;i<n;i+) s+=ai*bi; return s; void main() double c 5=1.1,2.2,3.3,4.4,5.5,d5=10.0,100.0,1000.0; cout<<f(c,d,5)<<endl; 輸出為:253133.incl
17、ude <iomanip.h> void main() for(int i=0;i<4;i+) cout<<endl<<setfill()<<setw(4-i)<<0 <<setfill(*)<<setw(i+i)<<(i>0?0:); 輸出為:34.運(yùn)行下面的程序,寫出當(dāng)輸入25,60時(shí)的輸出結(jié)果。 include <iostream.h> class goods private: static int totalWeight; int weight; public: go
18、ods(int w) weigh=w; totalWeight+=w; goods(goods& gd) weight=gd.weight; totalWeight+=weight; goods() totalWeight-=weight; int getwg() return weight; static int getTotal() return totalWeight; int goods:totalWeight=0; void main() int w; cout<<The initial weight of goods:<<goods:getTotal()<<endl; cin>>w; /輸入25 goods g1(w); cin>>w; /輸入60 goods g2(w); cout<<The total weight of goods:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版部編版小學(xué)語文一年級(jí)上冊(cè)人教版畫教學(xué)設(shè)計(jì)教案2
- 小學(xué)道德與法治學(xué)科有效實(shí)施情境教學(xué)的思考
- 江西省新八校2024-2025學(xué)年高三上學(xué)期第一次聯(lián)考數(shù)學(xué)試題及答案
- 社區(qū)綠化改造施工方案
- 常州倉儲(chǔ)地坪施工方案
- 低卡代餐知識(shí)培訓(xùn)課件
- 村級(jí)路燈安裝施工方案
- 2025年熱壓氮化硼制品項(xiàng)目發(fā)展計(jì)劃
- 2025年硬質(zhì)材料加工機(jī)床及其零件項(xiàng)目發(fā)展計(jì)劃
- 老年護(hù)理中的跌倒防范與管理
- 正弦函數(shù)的圖像與性質(zhì)優(yōu)秀課件
- 山東省任氏宗親分布村落
- 北師大版小學(xué)數(shù)學(xué)五年級(jí)下冊(cè)《有趣的折疊》說課稿
- 陜西省建設(shè)工程長(zhǎng)安杯獎(jiǎng)省優(yōu)質(zhì)工程結(jié)構(gòu)備案和復(fù)查的要求
- 典型示功圖分析(全)
- 水生觀賞動(dòng)物鑒賞與維護(hù)課程
- ATOS阿托斯葉片泵PFE-31PFE-41PFE-51選型資料樣本
- 全國(guó)優(yōu)秀中醫(yī)臨床人才研修項(xiàng)目考試大綱
- 日語綜合教程第五冊(cè)的PPT5-1
- 外購(gòu)件采購(gòu)清單模版(含標(biāo)準(zhǔn)件、外購(gòu)件、自制件)
- 《漢語口語速成》入門篇(下)第17課教案
評(píng)論
0/150
提交評(píng)論