首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,该工程中包含程序文件main.cpp,其中有类Door(“门”)和主函数main的定义。程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,该工程中包含程序文件main.cpp,其中有类Door(“门”)和主函数main的定义。程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改
admin
2017-02-21
29
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,该工程中包含程序文件main.cpp,其中有类Door(“门”)和主函数main的定义。程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应为:
打开503号门…门是锁着的,打不开。
打开503号门的锁…锁开了。
打开503号门…门打开了。
打开503号门…门是开着的,无须再开门。
锁上503号门…先关门…门锁上了。
注意:只修改每个“//ERROR*********found*********”下的那一行,不要改动程序中的其他内容。
#include<iostream>
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 i sUnlocked()const{return!locked;)
//门未锁时返回true,否则返回false
void open(){ //开门
cout<<end1<<"打开"<<num
<<"号门…";
//ERROR ****found****
if(closed)
cout<<"门是开着的,无须再开门。";
else if(locked)
cout<<"门是锁着的,打不开。";
else{
closed=false;
cout<<"门打开了。";
}
}
void close(){ //关门
cout<<end1<<“关上”<<num<<"号门…";
if fclosed)
cout<<“门是关着的,无须再关门。”;
else{
closed=true;
cout<<"门关上了。";
}
}
//ERROR *******found*******
void lock()const{ //锁门
cout<<endl<<"锁上"<<num<<"号门…";
if(10cked)
tout<<"门是锁着的,无须再锁门。“;
else{
if(!closed){
tout<<"先关门…";
closed=true;
}
locked=true;
COUt<<"门锁上了。";
}
}
void unlock(){ //开锁
cout<<end1<<"开"<<num<<"号门的锁…";
if(!locked)
tout<<"门没有上锁,无须再开锁。";
else{
locked=false;
cout<<"锁开了。";
}
}
},
int main()f
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(){
解析
(1)主要考查考生对this指针的掌握,在构造函数中this指针指向的是当前类,因此要给num赋值使用语句this->num=num;完成。
(2)主要考查考生对if语句的掌握,先看类的私有成员中关于closed的定义:bool closed;//true表示门关着。再看下一条语句:cout<<"门是开着的,无须再开门。";。即满足条件时就会输出:门是开着的,无须再开门。因此if括号内应该是!closedo
(3)主要考查考生对const函数的掌握,lock函数体中存在语句locked:true,即有参数发生改变,因此不能用const。
转载请注明原文地址:https://kaotiyun.com/show/xBAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列关于C++函数的描述中正确的是()。
包容类Contain和内嵌类Embed定义如下:#include<iostream.h>classContain{private:intX;protected:intz;public:
不合法的main函数命令行参数表示形式是
对于下面的程序ifstreamfin(c:\test.txt);if(fin)cout<<"ok";elsecout<<"wrong";对于if语句中的内容可
下列运算符中全都可以被友元函数重载的是
拷贝构造函数的参数一般是
以下不正确的定义语句是
随机试题
A.直接扩张血管平滑肌,以静脉为主B.cAMP依赖性正性肌力药C.使β受体密度上调,减慢心率,改善心肌顺应性D.抑制心肌细胞钠-钾-ATP酶下列治疗心力衰竭药物的主要作用原理是多巴酚丁胺
妇女,56岁。诉阴道一物脱出3年,妇查:宫颈已脱出至阴道口外,子宫体在阴道内,双附件正常,应该诊断子宫脱垂几度
患者,男性,65岁。高血压病史30年,因情绪激动,呼吸急促,左胸部剧烈疼痛,以“急性心肌梗死”收入院。对该患者的护理,属于依赖性护理措施的是
有关投资偏差产生的原因,以下说法正确的是( )。
下列苏州市的名山中,被称为“吴中第一峰”的名山是()。
有一位数学家说:“很难想象一个文理不通、错字连篇的人,能把逻辑严谨的数学内涵表达出来。”著名数学家苏步青说:“我从小打好的语文基础,对我学习其他学科提供了很大的方便。我还觉得学好语文对训练一个人的思维很有帮助,可以使思想更有条理。这些,对我后来学好数学都有
城乡居民在数量上的消长,标志着以农村人口为主的城乡人口结构发生了逆转。从大规模的城镇化启动到这一目标的实现,中国仅仅用了三十多年的时间。对于一个传统的、以农业为主的国度而言,这样的变化意义非凡、影响深远,也将成为中国在现代化进程中的一个重要里程碑。在接下来
A、 B、 C、 D、 B
【B1】【B2】
A.TechniquePublicationsAdministrator1.Collegebusiness/engineeringdegreeispreferred.2.Associate/threeyears’au
最新回复
(
0
)