第 1 頁:基本操作題 |
第 2 頁:簡單應用題 |
第 3 頁:綜合應用題 |
點擊查看:2017年9月計算機二級C++考試操作題沖刺提分卷匯總
基本操作題
1 [簡答題]
請使用VC6或使用【答題】菜單打開考生文件夾proj1下的工程proj1,其中有枚舉DOGCOLOR、狗類Dog和主函數main的定義。程序中位每個“// ERROR **** found ****”下的語句行有錯誤,請加以改正。改正后程序的輸出結果應該是:
There is a white dog named Hoho..
There is a black dog named Haha.
There is a motley dog named Hihi.
注意:只修改每個“// ERROR **** found ****”下的那一行,不要改動程序中的其他內容。
參考解析:
【參考答案】 (1)this->color=color;
(2)eonst char getName()const{return * name;}
(3)Dog dog1(”Hoho”,WHITE),dog2(”Haha”,BLACK),dos3(”Hihi”,OTHER);
【考點分析】
主要考查的是Dog類,其中涉及enum、靜態私有成員、const函數和構造函數。strcpy函數用來復制字符串,而對double、int等類型直接用“=”賦值即可。定義同一類型的變量時,幾個變量之間用“,”分開。
【解題思路】
(1)主要考查考生對strcpy函數的掌握,如果看到上一條語句strcpy(this->name,name);,就以為本條語句也要用strcpy函數來賦值,這是錯誤的。Strcpy函數只能復制字符串,根據類的私有成員聲明可知,color是DOGCOLOR型的,這里直接使用賦值語句“=”即可。
(2)主要考查考生對函數返回值的掌握,先解讀語句const char * getName()const{ return * name;},要返回的是一個const的字符指針,同時函數內的值不能改變,name在類的私有成員聲明中是個字符數組,* name代表字符數組而不是字符指針,問題
就出來了,需要修改返回類型:const char getName()const{return * name;}。
(3)語法錯誤,定義變量時,變量之間應使用“,”分開。
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關推薦: