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

admin2017-02-21  37

问题 请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,该工程中包含程序文件main.epp,其中有关TVSet(“电视机”)和主函数main的定义。程序中位于每个“//ERROR *******found*******”之后的一行语句有错误,请加以改正。改正后程序的输出结果应该是:
    规格:29英寸,电源:开,频道:5,音量:18
    规格:29英寸,电源:关,频道:-1,音量:-1
    注意:只修改每个“//ERROR ****found****”下的那一行,不要改动程序中的其他内容。
#include<iostream>
using namespace std;
class TVSet{  //“电视机”类
  const int size;
  int channel;  //频道
  int volume;  //音量
  bool on;  //电源开关:true表示开,false表示关
public:
//ERROR ****found****
  TVSet(int size){
    thiS->Size(size);
    channel=0;
    volume=15;
    on=false;
    }
    int getsize()const{returnsize;}  //返回电视机规格
  bool isOn()const{returnon;)  //返回电源开关状态
  //返回当前音量,关机情况下返回-1
  int getVolume()const { returnisOn()?volume:-1;}
  //返回当前频道,关机情况下返回-1
  int getChannel()const{return isOn()?channel:-1;)
//ERROR *******found*******
  void turnOnOff()const  //将电源在“开”和“关”之间转换
  {on=!on;)
  void setChannelTo(int chan)
{  //设置频道(关机情况下无效)
    if(isOn()&&chan>=0 &&chan<=99)
    channel=chan;
  }
  void setVolumeTo (int vol)
{  //设置音量(关机情况下无效)
    if(isOn()&&vol>=0&&vol
<=30)
    volume=vol,
    }
    void show state(){//ERROR  *******found*******
    cout<<"规格:"<<getsize()<<"英寸"
    <<",电源:"<<(isOn()?"开":"关")
    <<",频道:"<<getChannel()
    <<",音量:"<<getVolume()<<end1;
  }
};
int main(){
  TVSet tv(29);
  tv.turnOnOff();
  tv.setChanneiTo(5);
  tv.setVolumeTo(18);
  tv.show state();
  tv.turnOnOff();
  tv.show State();
  return 0;
}

选项

答案(1)TVSet(int size):size(size){ (2)void turnOnOff() (3)cout<<"规格:"<<getSize()<<"英寸"

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

最新回复(0)