首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,此工程中含有一个源程序文件proj2.cpp。 其中定义了类Bag和用于测试该类的主函数main。类Bag是一个袋子类,用于存放带有数字标号的小球(如台球中用的球,在类中用一个整数值
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,此工程中含有一个源程序文件proj2.cpp。 其中定义了类Bag和用于测试该类的主函数main。类Bag是一个袋子类,用于存放带有数字标号的小球(如台球中用的球,在类中用一个整数值
admin
2019-03-05
26
问题
请使用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://jikaoti.com/ti/T9t0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面对静态数据成员的描述中,正确的是
以下程序中,错误的行为①#include<iostream.h>②classA③{④public:⑤intn=2;⑥A(intval){cout<<val
下面的哪个选项不能作为函数的返回类型?
下列程序的输出结果是______。#include<iostream.h>#include<cstring.h>usingnamespacestd;voidfun(constchar*s,char&C){c=s[strlen(
以下程序的输出结果是#include<iostream>usingnamespacestd;intmain(){cout.fill(’*’);cout.width(5);cous<<hex<<100<<end1;re
有以下程序#include<iostream>usingnamespacestd;inta;intfun();intmain(){externinta;intb;a=100;b=fun();
不能作为函数重载的判断依据的是
以下不使用线性结构表示实体之间联系的模型的是()。
下列叙述中正确的是()。
下列选项中不属于软件生命周期开发阶段任务的是()。
随机试题
证券交易所的会员大会的职权包括()
你所在的部门很多同事上班时间上网玩游戏,其他部门同事和群众意见很大,领导让你来处理。你怎么办?
在星形联结的三相对称电路中,相电流与线电流的相位关系是()。
下列选项中,不属于计划特点的是()
函数在x=1处[].
A.医疗机构B.疾病预防控制机构C.各级人民政府卫生行政部门D.卫生监督机构E.各级人民政府对重大传染病流行趋势进行预测、预警的部门是
男31岁,尿频、尿急、尿痛1年余,有时尿浑浊,服用多种抗生素治疗无效,尿液检查:脓细胞满视野,蛋白(++)。B超提示右肾积水,输尿管探测不清楚。最为适宜的治疗方法是
加硝酸汞试液显砖红色的为( )。加碘试液显蓝色或紫色的为( )。
阳光中能引起皮肤癌的是()。
现代大学生的求职压力越来越大,在毕业找工作时,很多人都会有失落的感觉和悲观的情绪。以80后、90后为主体的大学生,更多地把就业压力归结于“社会用人不公、家庭帮助不大、学校指导乏力”,而忽视了内部因素:自我努力不够,对就业压力的归因仍存在“怨妇”现象。这段文
最新回复
(
0
)