首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义类CPlanet的保护数据成员distance和revolvePeriod,它们分别表示行星距太阳的距离和行星的公转
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义类CPlanet的保护数据成员distance和revolvePeriod,它们分别表示行星距太阳的距离和行星的公转
admin
2018-10-23
73
问题
使用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全国计算机二级
相关试题推荐
在声明派生类时,如果不显式地给出继承方式,缺省的类继承方式是私有继承private。已知有如下类定义:classBase{protected:voidfun(){}};classD
有下列程序:#include<iostream>usingnamespacestd;classTestClass1{public:TestClass1(){cout<<"A";}
在结构化设计方法中,数据流图表达了问题中的数据流与加工间的关系,并且每一个______实际上对应一个处理模块。
以下哪个特征不是面向对象思想中的主要特征?
下列程序的输出结果是______。#include<iostream>usingnamespacestd;template<typenameT>Tfun(Ta,Tb){return(a<=b)?a:b;}int
在结构化设计方法中,数据流图表达了问题中的数据流与加工间的关系,并且每一个______实际上对应一个处理模块。
若有如下程序:#include<iostream>usingnamespacestd;classTestClass1{private:inta;public:TestClass1(in
假定A为一个类,则语句A(A&a);为该类______函数的原型说明。
下列不是软件工程基本目标的是()。
在最坏情况下,冒泡排序所需要的比较次数为
随机试题
TheymaygotoLondon,buttheyarenotcertain().
关于碘酊和碘伏,正确的描述是
张某、方某共同出资,分别设立甲公司和丙公司。2013年3月1日,甲公司与乙公司签订了开发某房地产项目的《合作协议一》,约定如下:“甲公司将丙公司10%的股权转让给乙公司,乙公司在协议签订之日起三日内向甲公司支付首付款4000万元,尾款1000万元在次年3月
按照国务院有关规定批准开工报告的建筑工程,因故不能按期开工或者中止施工的,应当及时向批准机关报告情况,因故不能按期开工超过()的,应当重新办理开工报告的批准手续。
在进行摄人性会谈的过程中,控制会谈和转换话题的技巧不包括()。
看了《中华读书报》中《看法》栏目中的一篇读者来信《丰一吟的襟怀》,不禁引起我对新月还是残月讨论的兴趣。我从小就喜欢读丰子恺先生的书与画,觉得虽然不是轰轰烈烈,但总有一股雅趣渗透于其中。“人散后,一钩新月天如水”这幅画我也看过,也很喜欢。虽然丰先生画的是残月
通常所说的“白色污染”是指()。
陈鹤琴“五指活动”教育思想包括哪些内容?
Aswithotherformsofnonverbalcommunication,theuseoftouchtocommunicatefeelingsandemotionsvarieswidelyfromculture
ThewriterofChildeHarold’sPilgrimageis______.
最新回复
(
0
)