首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义类CPlanet的保护数据成员distance和revolvePeriod,它们分别表示行星距太阳的距离和行星的公转
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义类CPlanet的保护数据成员distance和revolvePeriod,它们分别表示行星距太阳的距离和行星的公转
admin
2018-10-23
54
问题
使用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://www.kaotiyun.com/show/3wAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下程序:#include<iostream.h>voidfun(inta,mtb,intC){a=456,b=567,c=678;}voidmain(){intx=10,y=20,z=30;
有下列程序:#include<iostream>usingnamespacestd;classTestClass1{public:TestClass1(){cout<<"A";}
有如下程序:#include<iostream>usingnamespacestd;classMyClass{public:MyClass(intx):val(x){}void
如果派生类以protected方式继承基类,则原基类的protected成员和public成员在派生类中的访问属性分别是()。
有如下程序:#include<iostream>usingnamespacestd;classTestClass1{public:TestClass1(){cout<<"TestClass1";}
对于长度为n的线性表,在最坏情况下,下列各种排序法所对应的比较次数中,正确的是()。
排序是计算机程序设计中的一种重要操作,常见的排序方法有插入排序、______和选择排序等。
若类A和类B的定义如下classA{inti,j;public:intgeti(){returni;}};classB:publicA{
数据库管理最本质的特点是实现数据的共享。为了实现数据的共享,保证数据的独立性、完整性和安全性,需要有一组软件来管理数据库中的数据,处理用户对数据库的访问,这组软件称为______。
以下不使用线性结构表示实体之间联系的模型的是()。
随机试题
提高早期胃癌诊断率的三项关键性手段是
理论上,下列哪种物质缺乏会导致血液中丙酮酸积聚()
推平车时,下列做法哪项是正确的
事实上从20世纪90年代开始,绿色经济的研究者就预言,按照著名的康德拉吉耶夫经济长波理论或熊彼特创新周期理论,在以信息技术革命为内容的第五次创新长波之后,即将来临的是以资源生产率革命为特征的第六次创新长波,而这个长波的意义就是开创以低碳能源为特征的生态经济
(2008年)音速是弱扰动在介质中的传播速度,也就是以下哪种微小变化以波的形式在介质中的传播速度?()
根据施工合同,甲建设单位应于2014年9月30日支付乙建筑公司工程款,2015年6月1日,乙单位向甲单位提出支付请求,则就该项款额的诉讼时效()。
将技术方案经济效果评价分为静态分析和动态分析的依据是()。
下列属于款项的是()。
下列会计报表中,属于按其编制基础分类的有()。
某企业是普通的化妆品生产企业,当年发生下列支出,依据企业所得税法相关规定,在计算应纳税所得额时,允许在税前扣除的是()。
最新回复
(
0
)