第 1 頁:選擇題 |
第 3 頁:基本操作題 |
第 4 頁:簡單應(yīng)用題 |
三、簡單應(yīng)用題(共24分)
42 [簡答題]
請使用VC6或使用【答題】菜單打開考生文件夾proj2下的工程proj2。其中有類Point(“點”)、Rectangle(“矩形”)和Circle(“圓”)的定義。在程序所使用的平面坐標(biāo)系統(tǒng)中,x軸的正方向是水平向右的,y軸的正方向是豎直向下的。請在橫線處填寫適當(dāng)?shù)拇a并刪除橫線,以實現(xiàn)上述類定義。此程序的正確輸出結(jié)果應(yīng)該是:
--圓形------------
圓心=(3,2)
半徑=1
面積=3.14159
--外切矩形------
左上角=(2,1)
右下角=(4,3)
面積 =4
注意:只能在橫線處填寫適當(dāng)?shù)拇a,不要改動程序中的其他內(nèi)容,也不要刪除或移動“// ****found ****”。
參考解析:
【參考答案】 (1)point.getX()+width,point.getY()+height
(2)radius * radius
(3)center.getX() - radius,center.getY() - radius
(4)2 * radius
【考點分析】
本題考查Point類、Rectangle類和Circle類,其中涉及構(gòu)造函數(shù)、const函數(shù)和靜態(tài)成員。
【解題思路】
(1)主要考查考生對成員函數(shù)的掌握,程序要求返回右下角頂點,該點的x坐標(biāo)為左上角頂點的x坐標(biāo)加上width,該點的y坐標(biāo)為左上角頂點y坐標(biāo)加上height,即return Point(point.getX()+width,point.getY()+height);。
(2)主要考查考生對成員函數(shù)的掌握,程序要求計算圓形面積,也就是返回圓面積,即return PI * radius * radius;。
(3)主要考查考生對成員函數(shù)的掌握,首先看函數(shù)聲明:Rectangle Circle::boundingBox()const,可知該函數(shù)要返回的是一個Rectangle類型,即要返回的是圓的外切矩形。再看Rectangle類的構(gòu)造函數(shù)Rectangle(Point p,int w,int h),由此可知,空格處要定義的點pt為左上角點,即Point pt(center.getX() - radius,center.getY() - radius);。
(4)由函數(shù)聲明和Rectangle類的構(gòu)造函數(shù)可知,w和h應(yīng)該為直徑,即w=h=2 * radius;。
四、綜合應(yīng)用題(共18分)
43 [簡答題]
【考點分析】
本題考查類的數(shù)據(jù)成員、類的成員函數(shù)、重載流運算符>>和插入運算符<<和字符數(shù)組。
【解題思路】
程序定義了MyString類,它包含一個成員:str字符指針;默認(rèn)構(gòu)造函數(shù)和復(fù)制構(gòu)造函數(shù)通過dup()函數(shù),動態(tài)分配地址p,將參數(shù)拷貝到p指向的內(nèi)存空間,再使用p初始化str;show()成員函數(shù)將str指向的字符串輸出;reverse()成員函數(shù)將str指向的字符串反轉(zhuǎn);重載的<<運算符函數(shù)調(diào)用形參m對象的show()函數(shù)輸出str指向的字符串。
main()函數(shù)首先構(gòu)造一個MyString類對象m1,構(gòu)造過程中傳人字符串“This is a string”,所以m1對象中的str指向一個動態(tài)分配的內(nèi)存空間,該段內(nèi)存存放拷貝的字符串“This is a string”,輸出m1后,再調(diào)用m1.reverse()函數(shù),將str指向的字符串進(jìn)行反轉(zhuǎn),再輸出m1,題意要求我們完成reverse()成員函數(shù)的定義,完成反轉(zhuǎn)字符串的功能。
由題意,我們僅有的信息就是str指向一個字符串,它是char*類型,需要對str指向的字符串進(jìn)行反轉(zhuǎn),需要獲得字符串的長度,然后將首尾字符進(jìn)行交換,直到交換到中間字符串為止,所以我們定義兩個變量i、j,表示元素下標(biāo),分別從首(i=0)和尾(長度-1)向中間遍歷該字符串,每次遍歷,首先判斷i是否小于j,若i小于j則將i和J下標(biāo)對應(yīng)的字符進(jìn)行交換,交換完成后i自增1,j自減1,直到i不小于j為止。
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關(guān)推薦:
2018年全國計算機(jī)等級考試復(fù)習(xí)知識點匯總(各科目)
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |