首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj1,该工程中包含程序文件main.cpp,其中有类Door(“门”)和主函数main的定义。程序中位于每个“//ERROR ****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应为:
请打开考生文件夹下的解决方案文件proj1,该工程中包含程序文件main.cpp,其中有类Door(“门”)和主函数main的定义。程序中位于每个“//ERROR ****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应为:
admin
2021-05-06
76
问题
请打开考生文件夹下的解决方案文件proj1,该工程中包含程序文件main.cpp,其中有类Door(“门”)和主函数main的定义。程序中位于每个“//ERROR ****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应为:
打开503号门...门是锁着的,打不开。
打开503号门的锁...锁开了。
打开503号门...门打开了。
打开503号门...门是开着的,无须再开门。
锁上503号门...先关门...门锁上了。
注意:只修改每个“//ERROR*********found*********”下的那一行,不要改动程序中的其他内容。
#include
using namespaee std;
class Door{
int num;//门号
bool closed;//true表示门关着
bool locked;//true表示门锁着
public:
Door(int hum){
//ERROR*********found*********
num=this->num:
closed=locked=true;
}
bool isClosed()const{retilrn closed;}
//门关着时返回true,否则返回false
bool isOpened()const{return!closed;}
//门开着时返回true,否则返回false
bool isLocked()const{return locked;}
//门锁着时返回true,否则返回false
bool isUnlocked()const{return!locked;}
//门锁时返回true,否则返回false
void open(){//开门
cout<<endl<<“打开”<<num<<“号门...”;
//ERROR*********found*********
if(closed)
cout<<“门是开着的,无须再开门。”;
else if(locked)
cout<<“门是锁着的,打不开。”;
else{
closed=false;
cout<<“门打开了。”;
}
}
void close(){//关门
cout<<endl<<“关上”<<Hum<<"号门...1";
if(closed)
cout<<“门是关着的,无须再关门。”;
else{
closed=true;
cout<<“门关上了。";
}
}
//ERROR*********found*********
void lock()const{//锁门
cout<<endl<<“锁上”<<num<<"号门...";
if(locked)
cout<<“门是锁着的,无须再锁门。”;
else{
if(!closed)}
cout<<“先关门...”;
closed=true;
}
locked=true;
cout<<“门锁上了。”;
}
}
void unlock(){//开锁
cout<<endl<<“开”<<num<<“号门的锁...”;
if(!locked)
cout<<“门没有上锁,无须再开锁。”;
else{
locked=false:
cout<<“锁开了。”;
}
}
};
int main(){
Door door(503);
door.open();
door.unlock();
door.open();
door.open();
door.lock();
return 0:
}
选项
答案
(1)this->num=num; (2)if(!closed) (3)void lock()
解析
本题考查Door类,其中涉及bool型私有成员及成员函数、构造函数和其他成员函数。在构造函数中this指针指向的是当前类,因此当参数名与要赋值的成员名称一样时,使用this指针来区别。(1)主要考查考生对this指针的掌握,在构造函数中this指针指向的是当前类,因此要给num赋值使用语句this->num=num;完成。(2)主要考查考生对if语句的掌握,先看类的私有成员中关于closed的定义:bool closed;//true表示门关着。再看下一条语句:cout<<“门是开着的,无须再开门。”即满足条件时就会输出:门是开着的,无须再开门。因此if括号内应该是!closed。(3)主要考查考生对const函数的掌握,lock函数体中存在语句locked=true,即有参数发生改变,因此不能用const。
转载请注明原文地址:https://kaotiyun.com/show/CQfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。(1)完成类TestClass1的成员函数seta定义,定义seta对象x为int类型,请在注释//********1****
使用VC6打开考生文件夹下的源程序文件modi2.cpp。完成函数fun(inta[],intn),实现递归函数fun(inta[],intn)的返回值是数组a[]的前n个元素之和。注意:不能修改程序的其他部分,只能修改fun()函数。
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为:initTestClassdelTestClass注意:不要改动main函数,不能增行或
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:(1)定义类的私有变量a、b,请在注释//********1********后添加适当的语句。(2)完
下列叙述中正确的是()。
下列关于函数参数的叙述中,正确的是()。
模板对类型的参数化提供了很好的支持,因此()。
一间宿舍可住多个学生,则实体宿舍和学生之间的联系是( )。
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和C代码,完成空出部分的程序,实现函数fun(char*s1,char*s2)将字符串s2连接在字符串s1之后,构成一个首指针为s1的字符串。注意:不能修改函数的其他部分。
数据管理技术发展的三个阶段中,()没有专门的软件对数据进行管理。Ⅰ.人工管理阶段Ⅱ.文件系统阶段Ⅲ.数据库阶段
随机试题
英美法系中达到与大陆法系处理违约金过高的同样效果的方法是()。
乳剂不稳定的现象包括
比较数据是指作为本期财务报表组成部分的上期对应数和相关披露。比较数据需要把握以下三个特征( )。下列关于比较数据的说法正确的是( )。
在劳动资料中,最能标志生产力发展水平的因素是()。
瓷器是指用瓷土为原料,经过配料、成型、干燥、焙烧等工艺流程制作而成的器物,瓷器的烧制温度一般在()。
构成茶叶外形、色泽、汤色及叶底色泽的成分是()。
执教《将进酒》,教师这样导入:余光中先生在他的一首题为《寻李白》的诗中这样写道:“酒人豪肠,七分酿成了月光,余下的三分啸成剑气,秀口一吐就是半个盛唐。”(出示课件)李白一生诗酒相依,诗达意,酒传情,为我们留下了近千首脍炙人口的诗篇。请同学们回忆一下读过的李
我国《专利法》规定,发明专利申请人可以向国务院专利行政部门提出进行实质审查请求的期限是()。
EconomicReforminChinaMoreUSsinologistshaveexpressedconfidenceinChina’seconomicreformandtheprospectsforChina
Somefindingsareissuedrecentlyaboutattendingacommunitycollege.Mostworkerswhohavea【C1】______fromacommunitycollege
最新回复
(
0
)