2016年計(jì)算機(jī)二級(jí)《C++》考前模擬基本操作試題

字號(hào):

二、基本操作題
    41請(qǐng)使用VC6或使用【答題】菜單打開考生文件夾projl下的工程projl,該工程中包含程序文件main.epp,其中有類Door(“門”)和主函數(shù)main的定義。程序中位于每個(gè)“//ERROR****found ****”之后的一行語句有錯(cuò)誤,請(qǐng)加以改正。改正后程序的輸出結(jié)果應(yīng)為:
    打開503號(hào)門…門是鎖著的,打不開。
    打開503號(hào)門的鎖…鎖開了。
    打開503號(hào)門…門打開了。
    打開503號(hào)門…門是開著的,無須再開門。
    鎖上503號(hào)門…先關(guān)門...門鎖上了。
    注意:只修改每個(gè)“//ERROR***********found **********”下的那一行,不要改動(dòng)程序中的其他內(nèi)容。
    #include
    using namespace std;
    class Door{
    int Bum;//門號(hào)
    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)著時(shí)返回true,否則返回false
    bool isOpened()const{return!closed;}
    //門開著時(shí)返回true,否則返回false
    b001 isLocked()const{retum locked;}
    //門鎖著時(shí)返回true,否則返回false
    bool isUnlocked()const{return!locked;}
    //門未鎖時(shí)返回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(){