首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义类CPlanet的保护数据成员distance和revolvePeriod,它们分别表示行星距太阳的距离和行星的公转
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义类CPlanet的保护数据成员distance和revolvePeriod,它们分别表示行星距太阳的距离和行星的公转
admin
2018-10-23
48
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
(1)定义类CPlanet的保护数据成员distance和revolvePeriod,它们分别表示行星距太阳的距离和行星的公转周期。其中,distance为double型,revolvePeriod为int型。请在注释//********1********之后添加适当的语句。
(2)定义类CEarth的构造函数CEarth(double d.intr),并在其中计算地球绕太阳公转的轨道周长。假定:circumference=2*d*3.1416。请在注释//********2********之后添加适当的语句。
(3)定义类Earth的成员display(),用于显示所有信息。包括地球距太阳的距离,地球的公转周期,以及地球绕太阳公转的轨道周长。请在注释//********3********之后添加适当的语句。
注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
1 #include<iostream>
2 using namespace std;
3 class CPlanet
4 {
5 protected:
6 //********1********
7
8 public:
9 CPlanet(double d,int r)
10 {
11 distance=d;
12 revolvePeriod=r;
13 }
14 };
15 class CEarth:public CPlanet {
16 double circumference;
17 public:
18 //********2********
19 CEarth(double d,int r)
20 {
21 circumference=2*d*3.1416;
22 }
23 //********3********
24
25 {
26 cout<<’’diStance=’’<<distance<<end1;
27 cout<<’’revolution Period=’’<<revolvePeriod<<end1;
28 cout<<’’revolution circumference=’’<<circumference<<end1;
29 }
30 };
31 void main()
32 {
33 CEarth earth(9300000,365);
34 earth.display();
35 }
选项
答案
(1)添加语句:double distance;int revolvePeriod; (2)将“CEarth(double d,int r)”补充完整为:CEarth(double d,int r):CPlanet(d,r) (3)添加语句:void display()
解析
程序中定义了类CPlanet和CEarth,CEarth公有派生于类CPlanet。类CPlanet含有保护成员变量distance和revolvePeriod,它们分别表示行星距太阳的距离和行星的公转周期,类CEarth含有成员变量circumference,表示地球绕太阳公转的轨道周长,其构造函数CEarth(double d,int r)计算处地球绕太阳公转的轨道周长赋值给circumference,display()用于显示所有信息。
(1)题目1要求“义类CPlanet的保护数据成员distance和revolvePeriod,它们分别表示行星距太阳的距离和行星的公转周期。其中,distance为double型,revolvePeriod为int型”,因此第1个标识下是添加数据成员distance和revolvePeriod的声明,因此第1个标识下应添加“double distance;intrevolvePeriod;”。
(2)假定:circumference=2*d*3.1416”,第2个标识下构造函数CEarth(double d,int r)完成类成员变量的初始化,在函数体内部完成了circumference的初始化,而变量distance和revolvePeriod并没有初始化,需调用基类的构造函数来初始化这两个变量,因此第2个标识下应改为“CEarth(double d,int r):CPlanet(d,r)”。
(3)第3个标识下完成成员函数display()的定义,函数display()的返回值为void,因此第3个标识下应添加“void display()”。
转载请注明原文地址:https://kaotiyun.com/show/3wAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在结构化设计方法中,数据流图表达了问题中的数据流与加工间的关系,并且每一个______实际上对应一个处理模块。
若将一个二元运算符重载为类的成员函数,其形参个数应该是______个。
有下列的程序:#include<cstring.h>#include<iostream.h>usingnamespacestd;classMyString{public:
有下列程序:#include<iostream>usingnamespacestd;classTest{public:Test(){n+=2;}~Test(){n-=3;}s
下列数据结构中,属于非线性的是()。
在进行了任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态,其中只能用于检测输入操作的函数的函数名是
若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是()。
在软件生存周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是
下面的哪个选项不能作为函数的返回类型?
一个算法通常由两种基本要素组成:一是对数据对象的运算和操作,二是______。
随机试题
评价战时共产主义政策。(华中师范大学2015年世界史基础真题)
在日常工作中,我帮助同事的时候()。
A、在成釉器内、外釉上皮之间的星形细胞B、钟状期末牙板断裂后残留的上皮岛C、釉质发育完成后,其表面由成釉器各层细胞相互结合形成的鳞状上皮D、釉质发育完成后,成釉细胞在釉质表面分泌的无结构有机物薄膜E、上皮根鞘断裂后遗留在牙
A.实证B.虚证C.胃肠穿孔D.胃癌E.胃阳不足胃脘部疼痛多在进食后加剧者,属于
容易在乳汁中排泄的药物是
如图所示,圆盘作定轴转动,轮缘上一点M的加速度α分别如图a、b与c所示三种情况。则在此三种情况下,圆盘的角速度ω与角加速度ε都不等于零的为()。
编制施工机械台班使用定额时,需要进行的工作包括()。
下列开发活动属于内部培训与开发的有()。
案例:韩老师在一次篮球原地单手肩上投篮的授课中,示范讲解结束后,将学生进行分组练习。像往常一样,韩老师将有先天性轻微扁平足的甲同学编入准备组。在练习结束后,组织学生进行半场3对3小组竞赛。比赛过程中,甲同学在一次抢篮板球的过程中崴脚受伤,韩老师见
Theycan’thelp______whentheysawtheclown.
最新回复
(
0
)