问答题 使用VC6打开考生文件央下的源程序文件modi3.cpp,其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义类CPlanet的保护数据成员distance和revolvePeriod,它们分别表示行星距太阳的距离和行星的公转周期。其中,distance为double型,revolvePeriod为int型。清在注释∥********1********之后添加适当的语句。 (2)定义类CEarth的构造函数CEarth(doublc d,intr),并在其中计算地球绕太刚公转的轨道周长。假定circumference=2*d*3.1416 。 请在注释 ∥********2********之后添加适当的语句。 (3)定义类Earth的成员display(),用于显示所有信息。包括地球距太阳的距离,地球的公转刷划,以及地球绕太阳公转的轨道周长。请在注释∥********3********之后添加适当的语句。 注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。 #include using namespace std; class s 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=”<
【正确答案】正确答案:(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()用于显示所有信息。