首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,该工程中包含程序文件main.cpp,其中有类Door(“门”)和主函数main的定义。程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,该工程中包含程序文件main.cpp,其中有类Door(“门”)和主函数main的定义。程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改
admin
2021-09-05
37
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,该工程中包含程序文件main.cpp,其中有类Door(“门”)和主函数main的定义。程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应为:
打开503号门…门是锁着的,打不开。
打开503号门的锁…锁开了。
打开503号门…门打开了。
打开503号门…门是开着的,无须再开门。
锁上503号门…先关门…门锁上了。
注意:只修改每个“//ERROR**********found**********”
下的那一行,不要改动程序中的其他内容。
#include
using namespace std;
class Door{
int num; //门号
bool closed; //true表示门关着
bool locked; //true表示门锁着
public:
Door(int num){
//ERROR*********found*********
num=thiS->num;
closed=locked=true;
}
bool isClosed()const{ return
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<
//ERROR*********found*********
if(closed)
cout<<”门是开着的,无须再开门。”;
else if(locked)
cout<<”门是锁着的,打不开。”;
else{
Closed=false;
cout<<“门打开了。”;
}
}
void close(){ //关门
cout<
if(closed)
cout<<”门是关着的,无须再关门。”;
else{
closed=true;
cout<<“门关上了。”;
}
}
//ERROR*********found*********
void lock()const{ //锁门
cout<
if(locked)
cout<<“门是锁着的,无须再锁门。”;
eise{
if(!closed){
cout<<”先关门…”;
closed=true;
}
locked=true;
cout<<”门锁上了。”;
}
}
void unlock(){ //开锁
cout<
if(!locked)
cout<<“门没有上锁,无须再开锁。”;
eise {
locked=false;
cout<<”锁开了。”;
}
}
};
int main(){
Door door(503);
door.open();
door.unlock();
door.open();
door.open();
door.lock(),
return 0;
}
选项
答案
(1)this一>num=nun; (2)if(!closed) (3)void lock(){
解析
(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/6dfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下类定义:classXX{intxx;public:xx():xx(O){cout<<’A’;}XX(intn):xx(n){cout<<’B’;}};classYY:publicXX{intyy;public:YY()
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。(1)在类TestClass中定义name为字符串类型,age为整型,请在注释∥********1********之后添加语句。(2
有如下程序:#includeusingnamespacestd;classPair{intm,n;public:Pair(intj,intk):m(j),n(k){}int
有如下程序段:inti=0,j=1;int&r=i;//①r=j;//②int*p=&i://*p=&r;//④其中会产生编译错误的语句是()。
下列叙述中正确的是( )。
下列关于New和delete运算符的叙述中,错误的是()。
请打开考生文件夹下的解决方案文件proj1,其中在编辑窗口内显示的主程序文件中定义有Xabc类和主函数main。在程序文本中位于每行’’//ERROR**********found**********下面的一行有错误,请加以更正。更正后程序的输出为:57
下列有关函数重载的叙述中,错误的是()。
软件(程序)调试的任务是()。
在数据库系统的内部结构体系中,索引属于()。
随机试题
欲做一个容积为Vm3的无盖圆柱形储粮桶,底用铝制。侧壁用木板制,已知每平米铝价是木板价的5倍,问怎样做才能使费用最少。
______allherfriendsandmoneygone,Katefelttotallyhopeless.
血瘀所致妇科病下列哪些是错误的:
A.控释膜材料B.骨架材料C.压敏胶D.背衬材料E.保护膜材料铝箔
采用路面钻芯机或路面切割机在现场钻取或切割路面的代表性试样时,钻取芯样的直径不宜小于最大集料粒径的()倍。
投资性房地产由成本模式转为公允价值模式时,应当将计量模式变更时公允价值与账面价值的差额,调整期初()科目。
内幕信息知情人员自己未买卖证券,也未建议他人买卖证券,但将内幕信息泄露给他人,他人依此买卖证券的,也属内幕交易行为。()
我们可以强调教育的目的是为国家培养这样或那样的人才,但不能由此而唯目的化.而_______了教育的本质属性以及教育对象的特殊性——人的成才绝非机器的_______,绝非以专业知识、技能的掌握为标尺,至少还包含着个人人格的_______以及心灵的滋养。填入划
【B1】【B10】
Awhitekidsellsabagofcocaineathissuburbanhighschool.ALatinokiddoesthesameinhisinner-cityneighborhood.Both
最新回复
(
0
)