请打开考生文件夹下的解决方案文件proj1,该工程中包含程序文件main.cpp,其中有关TVSet(“电视机”)和主函数main的定义。程序中位于每个“//ERROR*******found*******”之后的一行语句有错误,请加以改正。改正后程序的输

admin2020-06-29  52

问题 请打开考生文件夹下的解决方案文件proj1,该工程中包含程序文件main.cpp,其中有关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>=&&vol
<=30)
volume=vol;
}
void show_state( ){
//ERROR*******found*******
cout<<"规格:"<<getSize( )<<"英寸"
<<",电源:"<<(isOn( )?"开":"关")
<<",频道:"<<getChannel( )
<<",音量:"<<getVolume( )
<<endl;
}
},
int main( ){
TVSet tv(29);
tv.turnOnOff( );
tv.setChannelTo(5);
tv.setVolumeTo(18);
tv.showState( );
tv.turnOnOff( );
tv.showState( );
return0;
}

选项

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

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

最新回复(0)