[计算机类试卷]国家二级C++机试(操作题)模拟试卷489及答案与解析.doc
《[计算机类试卷]国家二级C++机试(操作题)模拟试卷489及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级C++机试(操作题)模拟试卷489及答案与解析.doc(9页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C+机试(操作题)模拟试卷 489及答案与解析 一、基本操作题 1 请打开考生文件夹下的解决方案文件 proj1,该工程中包含程序文件main cpp,其中有类 Door(“门 ”)和主函数 main的定义。程序中位于每个 “ERROR*found*”之后的一行语句有错误,请加以改正。改正后程序的输出结果应为: 打开 503号门门是锁着的,打不开。 打开 503号门的锁锁开了。 打开 503号门门打开了。 打开 503号门门是开着的,无须再开门。 锁上 503号门先关 门门锁上了。 注意:只参改每个 “ ERROR*found*”下的那一行,不要改动程序中的其他内容。 #includ
2、e 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( )constreturnclosed; 门关着时返回 true,否则返回 false bool isOpened( )constTel2L1rn!closed; 门开着时返回 true,否则返回 false bool isLock
3、ed( )constreturn locked; 门锁着时返回 true,否则返回 false bool isunlocked( )constreturn!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 “关上 “ n
4、um “号门 “; if(closed) tout “门是关着 的,无须再关门。 “; 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)
5、cout “门没有上锁,无须再开锁。 “; else locked=false; tout “锁开了。 “; ; int main( ) Door door(503); door open( ); door unlock( ); door open( ); door open( ); door lock( ); return0; 二、简单应用题 2 请打开考生文件夹下的解 决方案文件 proj2,其中定义了 Employee类和 Manager类。 Employee用于表示某公司的雇员,其属性包括姓名 (name)和工作部分 (dept)。Manager是 Employee的公有派生类,用于表
6、示雇员中的经理。除了姓名和工作部分之外, Manager的属性还包括级别 (1evel)。 Employee类的成员函数 print用于输出雇员的信息; Manager类的成员函数 print负责输出经理的信息。请在横线处填写适当的代码,然后删除横线,以实现上述类定义。此程序的正确输出结果应为: Name: Sally Smith Dept: Sales Level: 2 注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动 “ *found*”。 #include iostream #include string using namespace std; class
7、Employee public: Employee(string name, string dept): *found* _ Virtual void print( )const; string dept( )const返回 部门名称 *found* _ virtual Employee( ) private: string name_; string dept_; , class Manager: public Employee public: Manager(string name, stringdept, int level): *found* _ virtual voidprint(
8、)const; private: int level; ; void Employee: print( )const cout “Name: “ name endl; cout “Dept: “ dept endl; void Manager: print( )const *found* _ cout “Level: “ 1evel endl; o int main( ) Employee*emp=new Manager(“Sally Smith“, “Sales“, 2); emp- print( ); delete emp; return0; 三、综合应用题 3 请打开考生文件夹下的解决方
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 机试 操作 模拟 489 答案 解析 DOC
