首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含程序文件main.epp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含程序文件main.epp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的
admin
2020-10-21
50
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含程序文件main.epp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的代码并删除横线,以实现上述定义。此程序的正确输出结果应为:
ELEPHANT
MOUSE
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
1 #include
2 using namespace std;
3 enum category {EMPTY, ELEPHANT,MOUSE);
4 char*output[]={"EMPTY","ELE-PHANT","MOUSE"};
5 class Mammal
6 {
7 public:
8 Mammal(char*str)
9 {
10 //**********found**********
11 name=new
12 strcpy(name,str);
13 }
14 virtual char*WhoAmI()=0;
15 virtual~Mammal(){delete[] name;
16 }
17 void Print(){cout<
18 private:
19 char*name;
20 };
21 class Elephant:public Mammal
22 {
23 public:
24 //**********found**********
25 Elephant(char*str):_______{}
26 char*WhoAmI(){return output [ELE-PHANT];}
27 };
28 class Mouse:public Mammal
29 {
30 publiC:
31 Mouse(char*str):Mammal(Str)()
32 //**********found**********
33 char*WhoAml(){___}
34 };
35
36 int main()
37 {
38 //**********found**********
39 Mammal*pm=new________("Huan-huan");
40 pm->Print();
41 deletepm;
42 pm=new Mouse("Micky");
43 pm->Print();
44 delete pm;
45 return 0;
46 }
选项
答案
(1)char[strlen(str)+1]; (2)Mammal(str) (3)return output[MOUSE]; (4)Elephant
解析
(1)主要考查分配空间,程序要给name分配空间,由下一条语句中strcpy(name,str)可知程序要把字符串str复制给name,因此要分配的空间大小为strlen(sir)+1。
(2)主要考查考生对构造函数的掌握,因为Elephant类是Mammal类的派生类,所以其构造函数要使用成员列表先对Mammal类初始化。
(3)主要考查考生对枚举类型的掌握,先看程序:enumcategory{EMPTY,ELEPHANT,MOUSE}。再参考Elephant类中的WhoAmI函数:char术WhoAmI(){return output[EL-EPHANT];}。可知这里要填写的返回语句为:return output[MOUSE];。
(4)主要考查考生对派生类的掌握,题目要求输出:
ELEPHANT
MOUSE
可知,要先调用Elephant类的WhoAmI函数,因此给指针pm分配Elephant类空间。
转载请注明原文地址:https://kaotiyun.com/show/EVyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#includeusingnamespaeestd;classMyClass{public:MyClass(){++count;}~MyClass(){-~count;}
下列各组类型声明符中,含义相同的一组是()。
if语句的语法格式可描述为:格式1:if()或格式2:if()else关于上面的语法格式,下列表述中错误的是()。
设数据集合为D={1,2,3,4,5}。下列数据结构B=(D,R)中为非线性结构的是()。
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(intn),求出n×n矩阵的对角线数字的平方和。如果n为奇数,则对角线交叉部位数字只参与一次计算。注意:请勿改动主函数main与其他函数中的任何内容,仅在函数fun的花括号中填
下列关于派生类构造函数和析构函数的说法中,错误的是()。
下列运算符中不能在C++中重载的是()。
下面关于C++流的叙述中,正确的是()。
数据库管理系统中负责数据模式定义的语言是()。
随机试题
芳香水剂中加入一定量的盐可以是挥发油分离出来,原因是12.5%.的氯霉素注射液当用输液稀释至浓度为0.25%.以下时,会析出氯霉素沉淀
关于临终关怀符合伦理学的原因,说法错误的是
呈现药品不良反应的“药品因素”主要是
建筑工程造价应当按照国家有关规定,由()在合同中约定。
我国股权投资基金最主要的投资资金来源是()。
股份公司在提供优先认股权时会设定一个(),在此日期前认购普通股票的,该股东享有优先认股权。
在刑事诉讼案件中,一名被告人委托辩护人不得超过两人。()
Googleisoneofthemostvaluablecompaniesintheworld,butitsfuture,likethatofalltechgiants,iscloudedbyalooming
下列重载函数中,正确的是()。
Thefieldofmedicinehasalwaysattracteditsshareofquacksandcharlatans—disreputablewomenandmenwithlittleornomed
最新回复
(
0
)