首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明IntSet是一个用于表示正整数集合的类。IntSet的成员函数Intersection的功能是求当前集合与另一个集合的交集。请完成成员函数Intersection。在mai
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明IntSet是一个用于表示正整数集合的类。IntSet的成员函数Intersection的功能是求当前集合与另一个集合的交集。请完成成员函数Intersection。在mai
admin
2019-06-05
50
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明IntSet是一个用于表示正整数集合的类。IntSet的成员函数Intersection的功能是求当前集合与另一个集合的交集。请完成成员函数Intersection。在main函数中给出了一组测试数据,此时程序的输出应该是:
求交集前:
1 2 3 5 8 10
2 8 9 11 30 56 67
求交集后:
1 2 3 5 8 10
2 8 9 11 30 56 67
2 8
要求:
补充编制的内容写在“//********333********”与“********666********”之间,不得修改程序的其他部分。
注意:程序最后将结果输出到文件out.dat中。输出函数writeToFile已经编译为obj文件,并且在本程序中调用。
//Intset.h
#include<iostream>
using namespace std;
const int Max=1 00;
class IntSet
{
public:
IntSet()
//构造一个空集合
{
end=-1;
}
IntSet(int a[],int size)//构造一个包含数组a中size个元素的集合
{
if(Size>=Max)
end=Max-1;
else
end=size-1;
for(int i=0;i<=end;i++)
element
=a
;
}
bool IsMemberOf(int a)
//判断a是否为集合中的一个元素
{
for(int i=0;i<=end;i++)
if(element
==a)
return true;
return false;
}
int GetEnd(){return end;)
//返回最后一个元素的下标
int GetElement(int i){return element
;)
//返回下标为i的元素
IntSet Intersection(IntSet&set);
//求当前集合与集合set的交
void Print()
//输出集合中的所有元素
{
for(int i=0;i<=end;i++)
if((i+1)%20==0)
cout<<element
<<end1;
else
cout<<element
<<’’;
cout<<end1;
}
private:
int element[Max];
int end;
};
void writeTOFile(const char * );
//main.cpp
#include"ntSet.h"
IntSet IntSet∷Intersection
(IntSet&set)
{
int a[Max],size=0;
//********333********
//********666********
return IntSet(a,size);
}
int main()
{
int a[]={1,2,3,5,8,10);
int b[]={2,8,9,11,30,56,67);
IntSet setl (a,6),Set2 (b,7),set3;
cout<<"求交集前:"<<end1;
set1.Print();
set2.Print();
set3.Print();
set3=set1.Intersection(set2);
cout<<end1<<"求交集后:"<<end1;
set1.Print();
set2.Print();
set3.Print();
writeToFile("");
return 0;
}
选项
答案
for(int i=0;i<=set.GetEnd();i++) //遍对象set数组 if(IsMemberOf(set.GetElement(i))) //判断对象set数组第i个值是不是集合中的值,如果是则把它插入到a中 a[size++] =set.GetElement(i);
解析
主要考查考生对数组的掌握,根据IntSet类的构造函数:
IntSet(int a[],int size)
//构造一个包含数组a中size个元素的集合
{
if(size>=Max)
end=Max-1;
else
end=size-1;
for(int i=0,i<=end;i++)
element
=a
;
}
可知数组element用来装载集合,end表示数组长度,因此调用函数IsMemberOf来判断set中的元素是否存在于集合中,如果存在则放人数组a中。
转载请注明原文地址:https://kaotiyun.com/show/O18p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
数据流的类型有______和事务型。
下列程序的输出结果为-5/8-3/4,请将横线处的缺失部分补充完整。#include<iostream>usingnamespacestd;classFraction{//"分数"类public:Fractio
下列程序的输出结果为12.324.6,请将横线处的缺失部分补充完整。#include<iostream>usingnamespacestd;classBase{public:Base(intA):id
若有定义语句“intx=10,y=20z=20;”,则表达式x>z&&y=z的值为______。
下列关于析构函数的描述中,错误的是()。A)析构函数可以重载B)析构函数由系统自动调用C)每个对象的析构函数只被调用一次D)每个类都有析构函数
若AA为一个类,a为该类的非静态数据成员,在该类的一个成员函数定义中访问a时,其书写格式为()。A)aB)AA.aC)a{}D)AA::a{}
有如下两个类声明classAA{public:intm;};classBB:protectedAA{intn;};在类BB中,数据成员m的访问属性是_____,数据成员n
要利用C++流实现输入输出的各种格式控制,必须在程序中包含的头文件是()。A)fstreamB)istrearaC)ostreamD)iomanip
假设线性表的长度为n,则在最坏情况下,冒泡排序需要的比较次数为
随机试题
AccordingtoGouin,______expressionisintimatelylinkedwiththoughtaboutrealevents.
下列不能使食管下端括约肌(LES)舒张的是
臁疮的病因病机是()
男,30岁,突发上腹剧痛3小时,怀疑消化道穿孔,无休克表现,为进一步明确诊断,首选的检查方法是
财政、税务、银行以及审计部门对企业进行清查时,不需要本单位相关人员参加。()
2009年2月24日,为期一个半月的西藏民主改革50周年欠型展览在北京民族文化宫开幕,展览通过大量珍贵图片、档案材料、历史文物及群像雕塑向观众展示了一个新西藏从诞生到走向小康的历史过程。这一历史过程再次向人们印证了民族区域自治制度的优越性。下列关于我国民族
设f(x)在[-a,a]上连续,在(-a,a)内可导,且f(-a)=f(a)(a>0),证明:存在ξ∈(-a,a),使得f’(ξ)=2ξf(ξ).
Britain’sprivateschoolsareoneofitsmostsuccessfulexports.Thechildrenofthewealthy【C1】______tothem,whetherfromChi
To:CurtisFreemanFrom:JodiGrantDate:May30Subject:ExcellentCourseIamrespondingtoyourrequestforcommentsandfe
TheInternationalMonetaryFund(IMF)isthemostpowerfulfinancialinstitutionontheplanet,capableofdictatingeconomicpoli
最新回复
(
0
)