第 1 頁:基本操作題 |
第 2 頁:簡單應用題 |
2[簡答題]
請使用VC6或使用【答題】菜單打開考生文件夾proj2下的工程proj2,此工程中聲明的Array是一個表示數組的類。一個Array對象可以包含多個整型元素。Array的成員說明如下:成員函數add用于向數組的末尾添加一個元素;
成員函數get用于獲取數組中指定位置的元素;
數據成員a表示實際用于存儲數據的整型數組;
數據成員size表示數組的容量,數組中的元素個數最多不能超過size;
數據成員num表示當前數組中的元素個數。
SortedArray是Array的派生類,表示有序數組。
SortedArray重新定義了Array中的add函數,以確保有序數組中的元素始終按照升序排列。請在程序中的橫線處填寫適當的代碼,然后刪除橫線,以實現上述類定義。此程序的正確輸出結果應為:
10,9,8,7,6,5,4,3,2,1,
1,2,3,4,5,6,7,8,9,10,
注意:只在橫線處填寫適當的代碼,不要改動程序中的其他內容,也不要刪除或移動“//****found****”。
參考解析:【參考答案】 (1)a[num]=e;
(2)Array(s)
(3)a[j]=a[j-1]
(4)a[i] =e
【考點分析】
本題考查數組類Array及Array的派生類SortedArray,其知識點涉及構造函數、析構函數、虛函數和動態數組。一般考到函數時,首先要看函數名,通過函數名稱能大概知道該函數的功能,比如Array類中的virtual void add(int e)函數,看到這個函數我們能得到如下信息。
(1)有關鍵字virtual,說明該函數是虛函數,在 Array類的派生類里肯定會有對add函數的定義。
(2)有關鍵字void,說明此函數沒有返回值。
(3)add的意思是添加,它的形參是int e,那么我們大概可以猜到該函數的功能是把整型數值e添加到數組a中。
【解題思路】
(1)考查的是虛函數virtual void add(int e)的定義,即添an-個整型數e到a[num]中。
(2)主要考查的是Array類的派生類SortedArray類的構造函數的定義,定義之前要對基礎類初始化。
(3)因為SortedArray類是排序類,所以數組a中的元素要從小到大排序。在if(e
(4)主要考查虛函數virtual void add(int e)在派生類SortedArray類中的定義,把插入的數據放在數組a的第i+1個位置,即a[i]=e;。
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關推薦: