第 1 頁:選擇題 |
第 2 頁:基本操作題 |
第 3 頁:簡單應用題 |
三、簡單應用題(共24分)
42 [簡答題]
請使用VC6或使用【答題】菜單打開考生文件夾proj2下的工程proj2,該工程中包含一個程序文件main.cpp,其中有類CPolygon(“多邊形”)、CRectangle(“矩形”)、CTriangle(“三角形”)的定義。請在橫線處填寫適當的代碼并刪除橫線,以實現上述類定義。該程序的正確輸出結果應為:
20
10
注意:只能在橫線處填寫適當的代碼,不要改動程序中的其他內容,也不要刪除或移動“// ****found ****”。
參考解析:
【參考答案】 (1)virtual int area(void)=0;
(2)area()
(3)length * height
(4)CPolygon
【考點分析】
主要考查的是CPolygon類及其派生類CRectangle類和CTriangle類,其中涉及純虛函數和構造函數。在定義純虛函數時要參考在派生類中的同名函數的定義,要特別注意函數的返回類型和形參。
【解題思路】
(1)主要考查考生對純虛函數的掌握,在定義純虛函數時要看在派生類中函數的定義:int area(void)。由此可知純虛函數應該為:virtual int area(void)=0;。
(2)主要考查考生對純虛函數的掌握情況,由void printarea(void)可知,該函數要打印面積,因此在此要調用純虛函數area,即cont <
(3)主要考查考生對數學公式的掌握,該函數要返回三角形面積,三角形的面積公式為長乘以該邊上的高除以2,即return(length * height)/2;。
(4)主要考查考生對抽象類的掌握情況,根據程序段:
ppoly1=▭
ppoly2=&trgl;
可知指針ppoly1指向CRectangle類,而指針ppoly2指向CTriangle類,因此在這里只能填這兩種類的基類CPolygon類。
【解題寶典】
主要考查考生對純虛函數、抽象基類及成員函數的掌握情況,常用的數學公式,如三角形面積是長乘以高除以2,矩形面積是長乘以高等。
四、綜合應用題(共18分)
43 [簡答題]
請使用VC6或使用【答題l菜單打開考生文件夾proj3下的工程proj3,其中聲明了MiniComplex是一個用于表示復數的類。請編寫這個operator + 運算符函數,以實現復數的求和運算。兩個復數的和是指這樣一個復數:其實部等于兩個復數的實部之和,其虛部等于兩個復數的虛部之和。例如,(23+34i)+(56+35i)等于(79+69i)。
要求:
補充編制的內容寫在“// ******** 333 ********”與“// ******** 666 ********”之間,不得修改程序的其他部分。
注意:程序最后將結果輸出到文件out.dat中。輸出函數writeToFile已經編譯為obj文件,并且在本程序中調用。
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關推薦: