首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: 每卖出一个瓜,则计算瓜的重量,还要计算所有卖出瓜的总重量以及总个数,同时允许退货,请按照以下的操作,把类补充完整 (1)
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: 每卖出一个瓜,则计算瓜的重量,还要计算所有卖出瓜的总重量以及总个数,同时允许退货,请按照以下的操作,把类补充完整 (1)
admin
2016-10-28
28
问题
使用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
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
对于派生类的构造函数,在定义对象时构造函数的执行顺序为:先执行调用______的构造函数,再执行调用子对象类的构造函数,最后执行派生类的构造函数体中的内容。
有以下程序:#include<iostream.h>voidmain(){intx=10,y=10;for(inti=0;x>8;y=++i)cout<<x--<<","<<y<<","
对类的构造函数和析构函数描述正确的是()。
若已知charstr[20];,有语句cin>>str;当输入为:Thisisaprogram所得的结果是str=()。
若有以下变量和函数说明:#include<iostream.h>charCh=’*’;voidsub(intx,inty,charch,double*Z){switch(ch){
下面的说明中,正确的函数定义是()。
类模板不同于函数模板,类模板只可用【】型参数。
下列关于函数模板实参不能省略的情况说明不正确的是
以下类定义中可能会引起错误的语句是classA{public:~A(){}//1inti;//2private:
mystrlen函数的功能是计算str所指字符串的长度,并作为函数值返回,请填空。intmystrlen(char*str){inti;for(i=0;______!=’\0’;i++);
随机试题
_______最能直接反映出一个人的道德风貌。
据此可诊断为提示有肺动脉高压的是
患儿,女,2岁。被热水烫伤右侧足背,局部红肿并起了3个大米粒大小水疱。儿童烧烫伤常比成人严重的原因是
图11-5所示结构中,M和P可能为任何值时,对P作用点处位移的叙述,哪一项是错误的?
政府采取的干预出口贸易的措施中,出口退税属于()。
下列各项中,属于营业税兼营行为的有()。
甲被车撞伤倒地,行人乙拦下一辆出租车,将甲送往医院,乙支付了车费,其间,甲的手机丢失。下列表述中正确的是:
慢性根尖周炎的诊断主要依靠()。
试述法律与道德的冲突。要求:观点明确,说理充分,条理清晰,语言规范、流畅。
Tobefair,thisobservationisalsofrequentlymadeofCanadaandCanadians,andshouldbestbeconsideredNorthAmerican.Ther
最新回复
(
0
)