




已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
精品文檔學(xué)院 _班級_姓名_學(xué)號_考 試 科 目面 向 對 象 程 序 ( C+)考 試 成 績考 試 對 象XX 計(jì) 本 1 、 2、 3 班裝訂線一、是非題(每小題 1. 5 分,共 15 分) 說明:判斷各小題說法的正確性,在下面表格中對應(yīng)的題號下填入是非選擇,若正確,則打鉤();否則,打叉()。題號12345678910是/否1. 說明函數(shù)原型時不需要指明每個函數(shù)參數(shù)的名字,只需要說明每個參數(shù)的類型和返回值類型就可以了。2. 函數(shù)定義中的形參的作用域是該函數(shù)的函數(shù)體。3. 用 new 動態(tài)申請的內(nèi)存空間,必須用 delete 來釋放。 4. 構(gòu)造函數(shù)和析構(gòu)函數(shù)都可以聲明為虛函數(shù)。5. 在公有繼承中,基類中的公有成員和私有成員在派生類中都是可見的。6. 類的靜態(tài)數(shù)據(jù)成員需要在定義每個類的對象時進(jìn)行初始化。7. 使用關(guān)鍵字 class 定義的類中缺省的訪問權(quán)限是私有(private)的。8. 在基類中被說明為虛函數(shù)的類的成員函數(shù)必須在每個派生類中說明為虛函數(shù),才 能具有多態(tài)的特征。9. C+程序中,程序?qū)⒘鲗ο罂醋魇俏募幕怼?0如果程序中有多處要拋擲異常,應(yīng)該用不同的操作數(shù)類型來相互區(qū)別,操作數(shù) 的值不能用來區(qū)別不同的異常。二、填空題(每小題 1. 5 分,共 15 分)1 變 量 名是 變 量的 標(biāo)識 , 由 組 成 , 而 且必 須 以 開頭。2有了函數(shù)原型,函數(shù)的作用域就不是從 開始,而是從 開始。3獲取一個變量的地址所采用的操作符是 。4使用 const 語句定義一個標(biāo)識符常量時,則必須對它同時進(jìn)行 。5假定類 AB 中有一個公用屬性的靜態(tài)數(shù)據(jù)成員 bb,在類外不通過對象名訪問該成 員 bb 的寫法為 。6typedef 語句的作用為。7平時所提到的使用 MFC 編程,這里的 MFC 是 的縮寫。8若要在程序文件中進(jìn)行標(biāo)準(zhǔn)輸入輸出操作,則必須在開始的 # include 命令中 使用 頭文件。9C+中,若將 操作符插入到輸出流中,則以十六進(jìn)制格式輸出。10C+程序中,異常處理程序的主要任務(wù)是 。 三、單選題(在備選答案中選出一個正確答案填入括號內(nèi),每小題 2 分,共20 分)1C+對 C 語言作了很多改進(jìn),下列描述中使得 C 語言發(fā)生質(zhì)變,從面向過程變成 了面向?qū)ο蟮氖牵ǎ?A增加了一些新的運(yùn)算符B. 允許函數(shù)重載,并允許設(shè)置缺省參數(shù) C規(guī)定函數(shù)說明必須用原型D. 引進(jìn)了類和對象的概念2當(dāng)一個函數(shù)無返回值時,定義它的函數(shù)的類型是()。A. voidB. intC. 無D. long 3下列不是構(gòu)造函數(shù)特征的是()。A. 構(gòu)造函數(shù)的函數(shù)名與類名相同B. 構(gòu)造函數(shù)可以重載C. 構(gòu)造函數(shù)可以設(shè)置缺省參數(shù)D. 構(gòu)造函數(shù)必須指定返回類型 4關(guān)于成員函數(shù)特征的下列描述中,錯誤的是()。A成員函數(shù)一定是內(nèi)聯(lián)函數(shù)B成員函數(shù)可以重載 C成員函數(shù)可以設(shè)置缺省參數(shù)值D成員函數(shù)可以是靜態(tài)的5關(guān)于 new 運(yùn)算符的下列描述中,錯誤的是()。A. 它可以用來動態(tài)創(chuàng)建對象和對象數(shù)組B. 使用它創(chuàng)建的對象或?qū)ο髷?shù)組可以使用運(yùn)算符 delete 刪除C. 使用它創(chuàng)建對象時要調(diào)用構(gòu)造函數(shù)D. 使用它創(chuàng)建對象數(shù)組時必須指定初始值 6派生類的對象對它的基類成員中可以訪問的是()。A. 公有繼承的公有成員B. 公有繼承的私有成員C. 公有繼承的保護(hù)成員D. 私有繼承的公有成員 7下列描述中,正確的是().A. 虛函數(shù)是一個static 類型的成員函數(shù)B. 虛函數(shù)是一個非成員函數(shù) C. 抽象類是指具有純虛函數(shù)的類D. 抽象類可以說明其對象8假定要對類 AB 定義加號操作符重載成員函數(shù),實(shí)現(xiàn)兩個 AB 類對象的加法,并返 回相加結(jié)果,則該成員函數(shù)的聲明語句為 ()。A.ABoperator+(AB & a, AB & b)B. ABoperator+(AB& a)C.operator+(ABa)D. AB& operator+( ) 9下列不屬于VC消息映射內(nèi)容的是()。A. 通過將 DECLARE_MESSAGE_MAP 添加到類聲明,聲明消息映射 B. 改寫MFC相關(guān)類的虛函數(shù)C. 放置標(biāo)識消息的宏來執(zhí)行消息映射D. 添加成員函數(shù)來處理消息 10下列關(guān)于 VC+編程描述中,錯誤的是()。A. Windows 是一個基于事件驅(qū)動、基于消息的操作系統(tǒng)。 BWindows 程序始終是程序而不是操作系統(tǒng)決定何時調(diào)用哪個函數(shù)。C對于使用 VC 向?qū)傻某绦蚩蚣?,我們也可以用手工的方式寫出?DMFC 類庫其實(shí)是對 windows API 函數(shù)的封裝。四、根據(jù)下面各小題題目要求進(jìn)行簡單回答(第 1 小題 6 分,第 2 小題 3 分,第 3 小題 6 分,共 15 分)(1)已知類 B 和類 D,它們的類關(guān)系如下。請以類對象 b1,d1 和指針 pb1 為例 簡要說明 C+賦值兼容規(guī)則。(本小題 6 分)classB ;class D :pubic B ;Bb1, * pb1; Dd1;答:a)b)C)(2) 下列的程序定義了一個交換兩個浮點(diǎn)數(shù)的函數(shù) swap,并在主函數(shù)中調(diào)用這個函數(shù)進(jìn)行兩個浮點(diǎn)數(shù)的交換(本小題 3 分)void swap (floata , floatb)float temp=a; a=b; b=temp;void main( )float a=1,b=2; swap ( a, b );錯誤為: 改正方法為: (3) 寫出下面程序運(yùn)行結(jié)果。(本小題 6 分)#include class Apublic:virtual void act1() coutA:act1() called. endl; void act2() act1(); ;class B : public Apublic:void act1() coutB:act1() called. act1();p-act2 ();答:五、下面的程序共有 17 行,程序的每行前面加上了行號。程序中變量 num、i 、temp、 對象 cout 和函數(shù) func()的作用域范圍分別是什么?在程序的下面用行號來回答。(每 小題 1 分,共 10 分)1. #include 2. int num;3. void func();4. void main() 5. 6. char name20;7. int i;8.for(i=0; i20; i+)9.10. char temp;11. temp=namei;12. couttemp;13. 14. 15. void func() 16.17. cout”A function!”;18. 回答:num 的作用域?yàn)閺牡?行到第 行。 i 的作用域?yàn)閺牡?行到第 行。 temp 的作用域?yàn)閺牡?行到第 行。 cout 的作用域?yàn)閺牡?行到第 行。 func 的作用域?yàn)閺牡?行到第 行。六、程序回答題(每小題 1 分,共 5 分) 說明:讀懂程序,為便于提問,程序每行前面加有行號,請對所提的問題做出準(zhǔn)確解答。1#include 2int CircleArea()34double *pd=new double; 5if(!pd)6 7coutError Memory Allocation!endl; 8return 1;9 10 double &rd=*pd;11coutrd;13 coutThe Area of Circle is: rd*rd*3.14endl;14 delete &rd;15return 0; 1617void main()1819 if(CircleArea()20coutThe programn failed!endl; 21else22 coutThe programn successed!endl;23請寫出下列問題答案:a)第 4 行起何作用?答:b)第 5-9 行可否省去?并說明原因。 答:c)第 14 行起何作用? 答:d)此程序功能是什么? 答:e)解釋 14 行中&符號的意義? 答:七、請完成下面 2 個運(yùn)算符重載函數(shù),并對程序最后一行分析錯誤原因并改正(本題運(yùn)算符重載函數(shù)各 3 分,分析錯誤原因并改正 4 分,共 10 分) 給定整數(shù)類:class Integerpublic:void Set ( int ii=0 ) i=ii; Integer operator + ( int c ); Integer operator + (Integer & c); void Display() coutiendl;private:int i;請完成上面 2 個運(yùn)算符重載函數(shù),并以下面的主函數(shù)進(jìn)行測試。void main()IntegerA, B, C; ASet(20); CSet(10); B=A+4;BDisplay(); B=A+C;BDisplay();B=4+A; / 此行代碼有誤,請分析錯誤原因并改正八、編程題。聲明一個 shape 抽象類,在此基礎(chǔ)上派生出 Rectangle 和 Circle 類,二 者都有 GetArea ( ) 函數(shù)計(jì)算對象的面積,按下面的要求完成程序的編制工作。( 1 ) Rectangle 類有 m_Width, m_Height 屬性;( 2 ) Circle 類有 m_Radius 屬性;( 3 ) 分別編寫 Rectangle 類和 Circle 類帶默認(rèn)參數(shù)的構(gòu)造函數(shù);( 4 ) 編寫主函數(shù)對 Rectangle、Circle 類進(jìn)行測試,使它們以統(tǒng)一的操作界面輸出面 積;(提示:利用 for 循環(huán)進(jìn)行輸出)( 5 ) 回答將 Shape 類聲明為抽象類的方法及意義。(每小題 2 分,本題共 10 分)答案和評分標(biāo)準(zhǔn)(A 卷):一、是非題(每小題 1.5 分,共 15 分)評分標(biāo)準(zhǔn):選對者得 1.5 分,否則不得分題號12345678910對錯二、填空題(每小題 1. 5 分,共 15 分)評分標(biāo)準(zhǔn):每題與參考答案相同者得 1.5 分,否則不得分。1、字母數(shù)字下劃線,字母或下劃線2、函數(shù)定義函數(shù)聲明3、&4、 初始化5、AB:bb6、 將一個標(biāo)識符聲明成某個數(shù)據(jù)類型的別名7、Microsoft Foundation Classes8、iostream.h9、hex10、允許用戶排除環(huán)境錯誤,繼續(xù)運(yùn)行程序三、單選題(在備選答案中選出一個正確答案填入括號內(nèi),每小題 2 分,共 20 分)評分標(biāo)準(zhǔn):選對者得 2 分,否則不得分。題號12345678910選項(xiàng)DADADACBBB四、根據(jù)下面各小題題目要求進(jìn)行簡單回答(第 1 小題 6 分,第 2 小題 3 分,第 3 小題 6分,共 15 分) 評分標(biāo)準(zhǔn):每題與參考答案的敘述含義相同者得分,否則酌情給分。(1)a、派生類對象可以賦值給基類對象b1 = d1; b、派生類的對象也可以初始化基類對象的引用B& bb = d1; c、派生類對象的地址也可以賦給指向基類的指針pb1 = & d1;(2)錯誤為:void swap(float a ,float b );改正方法為:void swap(float & a ,float & b );(3)運(yùn)行結(jié)果為:B:act1() called.B:act1() called.B:act1() called.五、下面的程序共有 17 行,程序的每行前面加上了行號。程序中變量 num、i 、temp、 對象 cout 和函數(shù) func()的作用域范圍分別是什么?在程序的下面用行號來回答。(每小題 1 分,共 10 分)評分標(biāo)準(zhǔn):答對者得 1 分,否則不得分。 作用域范圍分別為:num 的作用域?yàn)閺牡?2 行到第 18 行。i的作用域?yàn)閺牡?7行到第 14行。 temp 的作用域?yàn)閺牡?10行到第 13行。cout 的作用域?yàn)閺牡?1行到第 18行。 func 的作用域?yàn)閺牡?3行到第 18行。六、程序回答題(每小題 1 分,共 5 分) 評分標(biāo)準(zhǔn):每題與參考答案的敘述含義相同者得分,否則酌情給分。1、動態(tài)分配一個 double 內(nèi)存空間。2、不可以,此程序段主要用來防止不能分配內(nèi)存空間。3、釋放所分配的內(nèi)存空間。4、計(jì)算圓面積。5、取地址。七、閱讀下列程序,回答后面提出的問題。(本題 10 分) 評分標(biāo)準(zhǔn):見參考程序中的注釋。(1) Integer Integer:operator + (int c)(3 分)Integer a; a.i=c+i; return a;(2) Integer Integer:operator + (Integer & c)(3 分)Integer a; a.i=c.i+i; return a;(3) Integer operator + (int m ,Integer & c)(4 分)Integer a; a.i=c.i+m; return a;八、程序回答題。(每小題 2 分,本題 10 分)評分標(biāo)準(zhǔn):每題與參考答案的敘述含義相同者得分,否則酌情給分。#include class Shapepublic:virtual int GetArea() =0;class Rectangle : public Shapepublic:Rectangle(int width=0,int height=0) m_Width=width,m_Height=height; int
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年移動互聯(lián)網(wǎng)應(yīng)用開發(fā)考試試題及答案
- 2025年數(shù)據(jù)科學(xué)與大數(shù)據(jù)技術(shù)課程考試試卷及答案
- 2025年農(nóng)村經(jīng)濟(jì)管理師資格考試試卷及答案
- 2025年美術(shù)教師專業(yè)技能考試試題及答案
- 2025年教育科技在課堂應(yīng)用能力考核試卷及答案
- 2025年教師資格證考試卷及答案
- 2025年非洲文化與貿(mào)易研究生入學(xué)考試試卷及答案
- 2025年高層管理人員溝通技巧考核試題及答案
- 正規(guī)煤炭運(yùn)輸合同
- 2024年度浙江省護(hù)師類之主管護(hù)師自我檢測試卷B卷附答案
- 2023年大姚縣民政局系統(tǒng)事業(yè)單位招聘筆試題庫及答案
- 心肺運(yùn)動試驗(yàn)教學(xué)課件
- 債權(quán)登記申報(bào)表
- 2022年醫(yī)學(xué)專題-肝內(nèi)膽管結(jié)石詳解
- 明陽風(fēng)機(jī)培訓(xùn)課件
- 委外加工流程
- 住院醫(yī)囑審核登記表-9月上
- Q∕SY 05010-2016 油氣管道安全目視化管理規(guī)范
- 藍(lán)海華騰變頻器說明書
- 中國海洋大學(xué)論文封面模板
- 遵義會議-(演示)(課堂PPT)
評論
0/150
提交評論