首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含程序文件main.epp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含程序文件main.epp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的
admin
2020-10-21
43
问题
请使用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全国计算机二级
相关试题推荐
请使用VC6或使用【答题】菜单打开考生文件夹projl下的工程proj1。程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应为:Name:SmithAge:21ID:99
数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和()。
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为:TestClass1TestClass2注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分的程序。函数func(intA[NUM],intn)实现的功能是将数组的内容进行一次重新排序。排序的方法是:给定n,则下标为i的数字与下标为n-i的数字交换。
类中的一个字符指针成员指向具有m个字节的存储空间时,它所能存储的字符串的最大长度为()。
下列队列的描述中,正确的是()。
下列选项中不符合良好程序设计风格的是()。
下列关于C++预定义流对象的叙述中,正确的是()。
在C++语言中函数返回值的类型是由()决定的。
在E-R图中,用来表示实体联系的图形是()。
随机试题
风湿性心脏病最易受累的瓣膜是
下列关于牙龈瘤的描述,错误的是
自身免疫病的发病机制不包括
危险废物填埋场距飞机场、军事基地的距离应在( )以上。
以下关于人大代表的辞职和补选的表述,正确的有()
根据我国法律规定,共同共有人分割共有财产时,如果财产是属于一个整体的,部分共有人出卖自己分得的财产,其他共有人主张优先购买权时,( )。
Comparisonsweredrawnbetweenthedevelopmentoftelevisioninthe20thcenturyandthediffusionofprintinginthe15thand1
Abusinessmanboughtsomegoodsatamarketinthemorningandsetoutatonceforhomewithallhisbags,forhewishedtobei
Inthispart,theinterlocutorasksquestionstoeachofthecandidatesinturn.Youhavetogiveinformationaboutyourselfand
Accordingtosomeeconomists,Japanisindangerofplungingintoadepressionthat,withdouble-digitunemployment,couldsever
最新回复
(
0
)