使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: 每卖出一个瓜,则计算瓜的重量,还要计算所有卖出瓜的总重量以及总个数,同时允许退货,请按照以下的操作,把类补充完整 (1)

admin2016-10-28  25

问题 使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
每卖出一个瓜,则计算瓜的重量,还要计算所有卖出瓜的总重量以及总个数,同时允许退货,请按照以下的操作,把类补充完整
(1)定义类Cmelon的私有静态数据成员float型变量totalweight和int型变量totalNo,请在注释//********1********后添加适当的语句。
(2)完成类Cmelon的带一个float型变量w的构造函数,并把这个W加到totalweight中,并且totalNo自加。请在注释//********2********后添加适当的语句。
(3)在析构函数中,在totalweight中减去weight,然后totalNo自减,请在注释//********3********后添加适当的语句。
(4)完成静态成员变量的初始化为0,请在注释//********4********后添加适当的语句。
注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
#include<iostream.h>
class Cmelon
{
private:
float weight;
//********1********

static int totalNo;
public:
Cmelon(float W)
{
//********2********

totalweight+=W;
totalNo++,
}
~Cmelon()
{
//********3********

totalweight-=weight;
}
void display()
{
cout<<"Sellamelonwith"<<weight<<"kg"<<endl;
cout<<"Total sell number:"<<totalNo<<endl;
cout<<"Totalsellweight:"<<totalweight<<"kg"<<endl<<endl;
}
};
//********4********

float Cmelon::totalweight=0.0;
int main()
{
Cmeion melonl(1.2);
melon1.display();
Cmelonmelon2(2.3);
melon2.display();
return0;
}

选项

答案(1)添力口语句:static float totalweight; (2)添加语句:weight=w; (3)添加语句:totalNo--; (4)添加语句:int Cmelon::totalNo=0;

解析 (1)静态数据成员声明时需使用关键字static,因此第1个标识下应添加“static float totalweight;”。
(2)构造函数用来对类成员进行初始化,在Cmelon类的构造函数Cmelon(float w)中,完成weight的初始化,并把这个w加到totalweight中,并且totalNo自加,因此第2个标识下应添加“weight=w:”。
(3)调用析构函数相当于退瓜,这时totalweight中减去weight,然后totalNo自减,因此第3个标识下应添加“totalNo--”。
(4)静态数据成员的初始化格式为:<数据类型><类名>::<静态数据成员>=<初始值>,因此第4个标识下应添加“int Cmelon::totalNo=0:”。
转载请注明原文地址:https://kaotiyun.com/show/9KNp777K
0

最新回复(0)