首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义类CPlanet的保护数据成员distance和revolvePeriod,它们分别表示行星距太阳的距离和行星的公转周期。其
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义类CPlanet的保护数据成员distance和revolvePeriod,它们分别表示行星距太阳的距离和行星的公转周期。其
admin
2016-10-28
34
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
(1)定义类CPlanet的保护数据成员distance和revolvePeriod,它们分别表示行星距太阳的距离和行星的公转周期。其中,distance为double型,revolvePeriod为int型。请在注释//********1********之后添加适当的语句。
(2)定义类CEarth的构造函数CEarth(double d,int r),并在其中计算地球绕太阳公转的轨道周长。假定:circumference=2*d*3.1416。请在注释//********2********之后添加适当的语句。
(3)定义类Earth的成员display(),用于显示所有信息。包括地球距太阳的距离,地球的公转周期,以及地球绕太阳公转的轨道周长。请在注释//********3********之后添加适当的语句。
注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
#include<iostream>
using namespace std;
class CPlanet
{
protected:
//********1********
public:
CPlanet(double d,int r)
{
diStance=d;
revolvePeriod=r;
}
};
class CEarth:public CPlanet{
double circumference;
public:
//********2********
CEarth(double d,int r)
{
circumference=2*d*3.1416;
}
//********3********
{
cout<<"diStance="<<distance<<endl;
cout<<"revolutionPeriod="<<revolvePeriod<<endl;
cout<<"revolu.tioncircumference="<<circumference<<endl;
}
};
void main()
{
CEarth earth(9300000,365);
earth.display();
}
选项
答案
(1)添加语句:double distance;int revolvePeriod; (2)将“CEarth(double d,int r)”补充完整为:CEarth(double d,int r):CPlanet(d,r) (3)添加语句:void display()
解析
(1)题目1要求“义类CPlanet的保护数据成员distance和revolvePeriod,它们分别表示行星距太阳的距离和行星的公转周期。其中,distance为double型,revolvePeriod为int型”,因此第1个标识下是添加数据成员distance和revolvePeriod的声明,因此第1个标识下应添加“double distance;int revolvePeriod;”。
(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/5ONp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列程序段的输出结果是#include<iostream.h>voidfun(int*x,int*y){cout<<*X<<*y;*X=3;*y=4;}v
C++语言中规定函数的返回值的类型是由()。
下列有关指针的用法中错误的是()。
C++程序是从【】函数开始执行的。
下面程序的输出结果是【】。#include<iostream.h>voidmain(){inta[6]={1,2,3,4,5,6};for(inti=0;i<5;i++)
下列程序段的输出结果是#include<iostream.h>voidfun(int*x,int*y){cout<<*x<<*y;*x=3;*y=4;
fun()函数的功能是:首先对a所指的N行N列的矩阵,找出各行中的最大的数,再求这N个最大值中的最小的那个数作为函数返回值。请填空完成此程序。#defineN100intfun(int(*A)[N]){in
由关系数据库系统支持的完整性约束是指______和参照完整性。
下列哪个是C++语言的有效标识符?
在C++语言中,数据封装要解决的问题是
随机试题
CD2分子的配体主要是
A.口服单层膜剂B.栓剂C.缓释制剂D.气雾剂E.静脉注射剂适用于不能口服给药患者的固体制剂是
A.吗啡B.哌替啶C.小剂量麦角新碱D.催产素静脉点滴E.苯巴比妥钠高张型子宫收缩功能紊乱时首选
国际货物集装箱运输中,装箱单是详细记载每箱货物的具体资料,又是海关申报的必要单证,它的英文缩写是()
下列股利理论中,支持“低现金股利有助于实现股东利益最大化目标”观点的是()。
孔府是历代孔子嫡裔衍圣公的官署和私邸,又称“衍圣公府”。
下列选项中,属于古楼阁的类型的是()。
货币性资产:是指持有的现金及将以固定或可确定金额的货币收取的资产,包括现金、应收账款和应收票据以及准备持有至到期的债券等。根据上述定义,下列不属于货币性资产的是()。
三传
什么是特殊迁移?
最新回复
(
0
)