首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,此工程中含有一个源程序文件proj2.cpp。 其中定义了类Bag和用于测试该类的主函数main。类Bag是一个袋子类,用于存放带有数字标号的小球(如台球中用的球,在类中用一个整数值
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,此工程中含有一个源程序文件proj2.cpp。 其中定义了类Bag和用于测试该类的主函数main。类Bag是一个袋子类,用于存放带有数字标号的小球(如台球中用的球,在类中用一个整数值
admin
2019-03-05
25
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,此工程中含有一个源程序文件proj2.cpp。
其中定义了类Bag和用于测试该类的主函数main。类Bag是一个袋子类,用于存放带有数字标号的小球(如台球中用的球,在类中用一个整数值表示一个小球),其运算符成员函数=用来判断两个袋子对象是否相同(即小球个数相同、每种小球数目也相同,但与它们的存储顺序无关);成员函数intInBag(intball)用来返回小球ball在当前袋子内的出现次
数,返回0表示该小球不存在。为类实现这两个函数,其用法可参见主函数main。
运算符函数operator=和成员函数InBag的部分实现代码已有文件proj2.epp中给出,请在标有注释“//TODO:”的行中添加适当的代码,将这两个函数补充完整,以实现其功能。
提示:在运算符函数=中首先判断两个袋子内的小球个数是否相同,再调用InBag函数来判断每种小球在两个袋子内的出现次数是否相同。
注意:只在指定位置编写适当代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
//proj2.cpp
#include
usingnamespacestd;
constintNAXNUH=100;
classBag{
private:
inthum;
intbag[NAXNUH];
public:
Bag(intm[],intn=0);//构造函数
booloperator==(Bag&b);//重载运算符=
intTnBag(int:ball);//某一小球在袋子内的出现次数,返回0表示不存在
};
Bag::Bag(intm[],intn)
{
if(rl>Hg_XNUH){
cerE<<"TOOmanymembers\n";
exit(-1);
}
for(inti=0;i
bag
=m
;
num=n;
}
boolBag::operator=(Bag&b)//实现运算符函数=
{
if(hum!=b.hum)//元素个数不同
returnfalse;
for(inti=0;i
//**********found**********
if(________)//TODO:加入条件,判断当前袋子中每个元素在当前袋子和袋子b中是否出现次数不同
//**********found**********
________;//TODO:加入一条语句
returntrue;
}
intBag::lnBag(intball)
{
intcount=0;
for(inti=0;i
//**********found**********
if(________)//TODO:加入条件,
判断小球ball是否与当前袋子中某一元素相同
//**********found**********
________;//TODO:加入一条语句
returncount;
}
intmain()
{
intdata[NAXNUH],n,i;
cin>>n;
for(i=0;i
cin>>data
;
Bagb1(data,n);//创建袋子对象b1
cin>>n;
for(i=0;i
cin>>data
,
Bagb2(data,n);//创建袋子对象b2if(b1=b2)//测试b1和b2是否相同
cout<<"Bagb1issamewithBagb2\n";
else
cout<<"Bagb1isnot;samewithBagb2\n";
return0;
}
选项
答案
(1)InBag(bag[i]) != b.InBag(bag[i]) (2)return false (3)ball == bag[i] (4)count++
解析
(1)主要考查考生对成员函数的掌握,题目要求,判断当前袋子中每个元素在当前袋子和袋子b中出现次数是否不同,在类的定义中有函数:int InBag(int ball),用于某一小球在袋子内的出现次数,返回0表示不存在,这里可直接调用该函数。
(2)由下一条语句:return true,可知当if条件不成立时返回true,故条件成立时返回false。
(3)题目要求判断小球ball是否与当前袋子中某一元素相同,因此判断条件为ball=bag
。
(4)count作为计数,存放小球出现的次数,因此当满足条件if (ball == bag
)时,变量count加1;。
转载请注明原文地址:https://kaotiyun.com/show/ovAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面关于虚函数的描述,错误的是
建立派生类对象时,3种构造函数分别是a(基类的构造函数)、b(成员对象的构造函数)、c(派生类的构造函数),这3种构造函数的调用顺序为
对类的构造函数和析构函数描述正确的是
在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中数据独立性最高的阶段是
在数据结构中,与所使用的计算机无关的是数据的
有如下数组声明:intvalue[30];,下标值引用错误的是
算法具有五个特性,以下选项中不属于算法特性的是()。
面向对象的开发方法中,类与对象的关系是
静态成员函数可以直接访问类的______成员,不能直接访问类的______成员。
已知一棵二叉树的先根序列为ABCDEFK,中根序列为DGBAFCK,则结点的后根序列为()
随机试题
咨询绩效的定量评估方法有哪些?
患者男性,56岁,眩晕头胀,面红,口干舌燥,易怒,腰膝酸软,睡有鼾声,渐见头摇肢颤,不能自主,舌红,苔薄黄,脉弦。该病代表方剂是
下列属于合同全面履行原则的是( )。
电力电缆按其绝缘类型可分为()和新型缆等。
当高层建筑最低消火栓栓口的静水压力大于()MPa时,应采用分区供水。
2016年3月1日,甲公司因发生财务困难,无力偿还所欠乙公司800万元款项。经双方协商同意,甲公司以自有的一栋办公楼和一批存货抵偿所欠债务。用于抵债的办公楼原值为700万元,已提折旧为200万元,公允价值为600万元;用于抵债的存货账面价值为90万元,
VoIP是一种利用区域或互联网进行交换话音信号的技术服务,在专用的电话上可以采用IP网络。以VoIP模式进行通话,是一种较便宜的跨地区电话联系方式,适用于个人、家庭或商业机构用户。支持这一技术服务的首要条件就是一个稳定的网络环境和宽带网络。在发达国家A国(
关于保守力,下面说法正确的是()。
下列关于Windows2003系统下DNS服务器配置和测试的描述中,错误的是()。
Whatproblemdoesthewomanhave?
最新回复
(
0
)