请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程pmj1,该工程中包含程序文件main.cpp,其中有关TVSet(“电视机”)和主函数main的定义。程序中位于每个“//ERROR********found********”之后的一行语句有

admin2016-08-19  25

问题 请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程pmj1,该工程中包含程序文件main.cpp,其中有关TVSet(“电视机”)和主函数main的定义。程序中位于每个“//ERROR********found********”之后的一行语句有错误,请加以改正。改正后程序的输出结果应该是:
    规格:29英寸,电源:开,频道:5,音量:18
    规格:29英寸,电源:关,频道:-1,音量:-1
    注意:只修改每个“//ERROR****found****”下的那一行,不要改动程序中的其他内容。
1   #include
2   using namespace std;
3   class TVSet{  //"电视机"类
4    const int size;
5    int channel;//频道
6    int volume;  //音量
7    bool on;  //电源开关:true表示开,false表示关
8   public:
9   //ERROR********found********
10    TVSet(int slze){
11   this->size(size);
12    channel=0;
13    volume=15;
14    on=false;
15    }
16    int getsize()const{return size;)//返回电视机规格
17    bool isOn()const{return on;}  //返回电源开关状态
18    //返回当前音量,关机情况下返回-1
19    int getVolume()const{return isOn()?volume:-1;}
20    //返回当前频道,关机情况下返回一1
21    int getChannel()const{return isOn()?channel:-1;}
22    //ERROR ********found********
23    void turnOnOff()const  //将电源在“开”和“关”之间转换
24    {on=!on;}
25    void setChannelTo(int chan){  //设置频道(关机情况下无效)
26    if(isOn()&&chan>=0&&chan<=99)
27    channel=chan;
28    }
29    void setVolumeTo(int vol){  //设置音量(关机情况下无效)
30    if(isOn()&&vol>=0&&vol<=30)
31    volume=vol;
32    }
33    void show state(){
34    //ERROR  ********found********
35    cout<<"规格:"<36    <<",电源:"<<(isOn()?"开":"关")
37    <<",频道:"<38    <<",音量:"<39    }
40  };
4l  int main(){
42   TVSet tv(29);
43    tv.turnOnOff();
44   tv.setChannelTo(5);
45    tv.setVolumeTo(18);
46    tv.show state();
47    tv.turnOnOff();
48   tv.show state();
49    return 0;
50  }

选项

答案(1)TVSet(int size):size(size){ (2)void tumOnOff() (3)eout<<"规格:"<
解析 (1)主要考查考生对构造函数的掌握,因为size是常变量,所以只能用成员初始化列表来初始size,即TVSet(intsize):size(size){。
    (2)主要考查考生对eonst函数的掌握,在tumOnOff函数中,有语句:on=!on;,使得on的值发生改变,因此该函数不能使用eonst。
    (3)主要考查考生对输出语句的掌握,下一条语句:<<”,电源:”<<(isOn()?"开":"关"),说明输出语句还没结束,因此不能用“;”。
转载请注明原文地址:https://kaotiyun.com/show/d4Np777K
0

最新回复(0)