欢迎来到天天文库
浏览记录
ID:38821609
大小:64.51 KB
页数:7页
时间:2019-06-19
《面向对象技术C++平时作业》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、平时作业共2次平时作业(1)定义、实现并测试表示由整型数元素组成的集合类型IntSet。需提供的操作至少应包括:l构造函数l析构函数l拷贝构造函数l插入元素l删除元素l清空集合l集合并l集合交l集合差l集合显示输出集合显示输出的格式为{元素1,元素2,…},空集的输出为{}。/*intset.h*/#ifndefINTSET_H#defineINTSET_HclassIntSet{intcursize,maxsize;int*x;boolmember(intt)const;public:IntSet(intm=100);//l构造函数IntSet(const
2、IntSet&);//l拷贝构造函数~IntSet();//l析构函数voidinsert(intt);//l插入元素voidremove(intt);//l删除元素voidclear();//l清空集合voidprint();//l集合显示输出IntSetsetunion(constIntSet&);//l集合并IntSetsetdifference(constIntSet&);//l集合差IntSetsetintsection(constIntSet&);//l集合交};#endif/*intset.cpp*/#include"stdafx.h"#inc
3、lude#includeusingnamespacestd;#include"intset.h"IntSet::IntSet(intm){if(m<1)exit(1);cursize=0;x=newint[maxsize=m];}IntSet::~IntSet(){deletex;}IntSet::IntSet(constIntSet&m){cursize=m.cursize;x=newint[maxsize=m.maxsize];for(inti=0;i4、ntSet::member(intt)const{intl=0;intu=cursize-1;while(l<=u){intm=(u+l)/2;if(tx[m])l=m+1;elsereturntrue;}returnfalse;}voidIntSet::insert(intt){if(member(t)){return;}if(cursize>=maxsize){exit(1);}x[cursize++]=t;for(inti=cursize-1;i>0;i--){if(x[i]5、[i];x[i]=x[i-1];x[i-1]=temp;}else{break;}}}voidIntSet::remove(intt){intflag=0;intpos;for(inti=0;i6、;i0){for(inti=0;i7、tSetr;for(inti=0;i8、etr;for(inti=0;i
4、ntSet::member(intt)const{intl=0;intu=cursize-1;while(l<=u){intm=(u+l)/2;if(tx[m])l=m+1;elsereturntrue;}returnfalse;}voidIntSet::insert(intt){if(member(t)){return;}if(cursize>=maxsize){exit(1);}x[cursize++]=t;for(inti=cursize-1;i>0;i--){if(x[i]5、[i];x[i]=x[i-1];x[i-1]=temp;}else{break;}}}voidIntSet::remove(intt){intflag=0;intpos;for(inti=0;i6、;i0){for(inti=0;i7、tSetr;for(inti=0;i8、etr;for(inti=0;i
5、[i];x[i]=x[i-1];x[i-1]=temp;}else{break;}}}voidIntSet::remove(intt){intflag=0;intpos;for(inti=0;i6、;i0){for(inti=0;i7、tSetr;for(inti=0;i8、etr;for(inti=0;i
6、;i0){for(inti=0;i7、tSetr;for(inti=0;i8、etr;for(inti=0;i
7、tSetr;for(inti=0;i8、etr;for(inti=0;i
8、etr;for(inti=0;i
此文档下载收益归作者所有