首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含程序文件main.cpp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含程序文件main.cpp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的
admin
2018-03-13
107
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含程序文件main.cpp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的代码并删除横线,以实现上述定义。此程序的正确输出结果应为:
ELEPHANT
MOUSE
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
#include
using namespace std;
enum category {EMPTY, ELEPHANT,MOUSE);
char*output[]={"EMPTY","ELEPHANT","MOUSE"};
class Mammal
{
public:
Mammal(char*str)
{
//**********found**********
name=new__________
strcpy(name,str);
}
virtual char*WhoAmI()=0;
virtual ~Mammal(){
delete[]name;}
void Print(){cout<
private:
char*name;
};
class Elephant:public Mammal
{
public:
//**********found**********
Elephant(char*str):__________{}
char*WhoAmI(){return output[ELEPHANT];}
};
class Mouse:public Mammal
{
public:
Nouse(char*str):Mammal(str){}
//**********found**********
char*WhoAmI(){________}
};
int main()
{
//**********found**********
Mammal*pm=new_________("Huanhuan");
pm->Print();
delete pm;
pm=new Mouse("Micky");
pm->Print();
delete pm;
return 0;
}
选项
答案
(1)char[strlen(str)+1]; (2)Mammal(str) (3)return output[MOUSE]; (4)Elephant
解析
(1)主要考查分配空间,程序要给name分配空间,由下一条语句中strcpy(name,str)可知程序要把字符串str复制给name,因此要分配的空间大小为strlen(str)+1。
(2)主要考查考生对构造函数的掌握,因为Elephant类是Mammal类的派生类,所以其构造函数要使用成员列表先对Mammal类初始化。
(3)主要考查考生对枚举类型的掌握,先看程序:enum category{EMPTY,ELEPHANT,MOUSE}。再参考Elephant类中的WhoAmI函数:char*WhoAmI(){return output[ELEPHANT];}。可知这里要填写的返回语句为:return output[MOUSE];。
(4)主要考查考生对派生类的掌握,题目要求输出:
ELEPHANT
MOUSE
可知,要先调用Elephant类的WhoAm1函数,因此给指针pm分配Elephant类空间。
转载请注明原文地址:https://kaotiyun.com/show/9VAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列数据结构中具有记忆作用的是
在下面的程序的横线处填上适当的语句,使该程序的输出结果为12。#include<iostream>usingnamespacestd;classTestClass{public:
数据库系统阶段的数据具有较高独立性,数据独立性包括物理独立性和______两个含义。
有如下程序:#include<iostream.h>voidmain(){floatx=2.0,y;if(x<0.0)y=0.0;elseif(x<10.0)y=1.0/x;el
虚函数必须是类的______。
下列程序的输出结果是#include<iostream>usingnamespacestd;intmain(){chara[]="Hello,World
执行语句序列ofstreamoutfite("data.dat");if(...)cout<<"ok";elsecout<<"fail";后,如果文件打开成功,显示“ok”,否则显示“fail”。由此可知,上面if语句的“…”
在进行任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中只能用于检测输入流状态的操作函数名称是
在程序设计阶段应该采取【】和逐步求精的方法,把一个模块的功能逐步分解,细化为一系列具体的步骤,进而用某种程序设计语言写成程序。
随机试题
下列主要用于指导ARDS机械通气参数设置的呼吸环是
A.黄连解毒汤B.宣毒发表汤C.清咽下痰汤D.清解透表汤E.羚角钩藤汤治疗麻疹初热期应首选的方剂是
患者,女,25岁。刷牙后牙龈出血,血色鲜红,伴齿龈红肿疼痛,口臭,舌红,苔黄,脉洪数。该患者进行辨证论治时,其治法为
期货公司应当在本公司网站和营业场所提示客户可以通过()查询其从业人员资格公示信息。
青少年美术作品是青少年身体发展水平、知觉能力、情感态度和生活经验的产物。下列关于青少年绘画作品的主要特点说法错误的是()。
下列选项中,属于对学习者分析的内容的是()。
心理契约是指个体与组织之间隐含的没有明文规定的双方各自的责任及对对方的期望。根据上述定义,下列属于建立心理契约的措施是:
从所给的四个选项中,选择最合适的一个填入问号处,使之呈现一定的规律性。
为什么说传播的过程可以理解为意义与符号的两度“翻译”过程?(上海大学2002研)
加工一个零件,甲需3分钟,乙需3.5分钟,丙需4分钟,现有1825个零件要加工,为尽早完成任务,甲、乙、丙各加工一定数量零件,那么完成任务所需时间最少是()小时.
最新回复
(
0
)