二、基本操作題
41請使用VC6或使用【答題】菜單打開考生文件夾projl下的工程projl,該工程中包含程序文件main.epp,其中有類Door(“門”)和主函數(shù)main的定義。程序中位于每個“//ERROR****found ****”之后的一行語句有錯誤,請加以改正。改正后程序的輸出結(jié)果應(yīng)為:
打開503號門…門是鎖著的,打不開。
打開503號門的鎖…鎖開了。
打開503號門…門打開了。
打開503號門…門是開著的,無須再開門。
鎖上503號門…先關(guān)門...門鎖上了。
注意:只修改每個“//ERROR***********found **********”下的那一行,不要改動程序中的其他內(nèi)容。
#include
using namespace std;
class Door{
int Bum;//門號
bool closed;//true表示門關(guān)著
bool locked://true表示門鎖著
public:
Door(int nHm){
//ERROR***********found***********
nun=this一>ann:
closed=locked=true:
}
bool isClosed()const{rehlrn closed;}
//門關(guān)著時返回true,否則返回false
bool isOpened()const{return!closed;}
//門開著時返回true,否則返回false
b001 isLocked()const{retum locked;}
//門鎖著時返回true,否則返回false
bool isUnlocked()const{return!locked;}
//門未鎖時返回true,否則返回false
void open(){ //開門
cout<
//ERROR***********found***********
if(closed)
cout<<”門是開著的,無須再開門!;
else if(10cked)
cout<<”門是鎖著的,打不開。”;
else{
closed=false;
eout<<”門打開了!;
}
}
void close(){//關(guān)門
cout<
if(closed)
cout<<”門是關(guān)著的,無須再關(guān)門。”;
else{
closed=true;
cout<<”門關(guān)上了.";
}
}
//ERROR************found************
void lock()const{//鎖門
cout<
if(locked)
cout<<”門是鎖著的,無須再鎖門!;
else{
if(!closed){
cout<<”先關(guān)門...”;
closed=true;
}
locked=true:
cout<<”門鎖上了!;
}
}
wild unlock(){//開鎖
cout<
if(!locked)
cout<<”門沒有上鎖,無須再開鎖!;
else{
locked=false;
cout<<”鎖開了。”;
}
};
int main(){
Door door(503);
door.open();
door.unlock();
door.open();
door.open();
floor.10ck();
return 0;
}
參考解析:
(1)this—>num=num;
(2)if(!closed)
(3)void lock(){
三、簡單應(yīng)用題
42請使用VC6或使用【答題】菜單打開考生文件夾proj2下的工程proj2,該工程中包含一個程序文件 main.cpp,其中有類CPolygon(“多邊形”)、CRectangle(“矩形”)、CTriangle(“三角形”)的定義。請在橫線處填寫適當(dāng)?shù)拇a并刪除橫線,以實現(xiàn)上述類定義。該程序的正確輸出結(jié)果應(yīng)為: 注意:只能在橫線處填寫適當(dāng)?shù)拇a,不要改動程序中的其他內(nèi)容,也不要刪除或移動“//****found****”。 #include
{tout<<——<
int area(void){return(width *height);}
class CTriangle:public CPolygon{
int length;//三角形一邊長 int height;//該邊上的高
public:
CTriangle(int l,int h):length(1),height(h){}
//*********found*********
int area(void){return(——)/2;}
};
int main(){
CRectangle rect(4,5); CTriangle trgl(4,5);
//*********found********* ______ *ppolyl,* ppoly2; ppolyl=▭
ppoly2=&trgl;
ppolyl->printarea(); ppoly2->printarea(); retun 0;
參考解析:
(1)virtual int area(void)=0;
(2)area()
(3)length*height
(4)CPolygon
相關(guān)推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |