实验11 运算符重载

实验11 运算符重载

ID:11380759

大小:124.00 KB

页数:13页

时间:2018-07-11

实验11 运算符重载_第1页
实验11 运算符重载_第2页
实验11 运算符重载_第3页
实验11 运算符重载_第4页
实验11 运算符重载_第5页
资源描述:

《实验11 运算符重载》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实验11运算符重载(1)一、实验目的1、掌握运算符重载的概念;2、掌握使用friend重载运算符的方法。二、实验内容1、用成员函数重载运算符,使对整型的运算符=、+、-、*、/适用于分数运算。要求:(1)输出结果是最简分数(可以是带分数);(2)分母为1,只输出分子。2、用友元函数重载运算符,使对整型的运算符=、+、-、*、/适用于分数运算。3、定义如下集合类的成员函数,并用数据进行测试:classSet{int*elem;//存放集合元素的指针intcount;//存放集合中的元素个数public:Set();Set(

2、ints[],intn);intfind(intx)const;//判断x是否在集合中Setoperator+(constSet&);//集合的并集Setoperator-(constSet&);//集合的差集Setoperator*(constSet&);//集合的交集voiddisp();//输出集合元素};4、定义一个人民币类RMB,包含私有数据成员元、角、分,请用友元函数重载运算符“+”和“++”,以对类对象进行运算。三、实验程序及结果1.#includeusingnamespacestd;c

3、lassComplex{public:Complex(intX=0,intY=0)//构造函数初始化{x=X;y=Y;}voidgys()//求最大公约数{intt;t=x%y;while(t!=1){x=y;y=t;t=x%y;}}voidprint()//输出分数值{intz;if((xy)&&(y!=1))//分母小于分子输出带分数{z=x/y;cout<

4、endl;}}Complexoperator+(Complexc);//声明运算符重载函数Complexoperator-(Complexc);Complexoperator*(Complexc);Complexoperator/(Complexc);private:intx,y;};ComplexComplex::operator+(Complexc)//定义+重载函数{Complextemp1;if(y!=c.y){temp1.y=y*c.y;temp1.x=x*c.y+c.x*y;}returntemp1;}Com

5、plexComplex::operator-(Complexc)//定义-重载函数{Complextemp1;if(y!=c.y){temp1.y=y*c.y;temp1.x=x*c.y-c.x*y;}returntemp1;}ComplexComplex::operator*(Complexc)//定义*重载函数{Complextemp1;if(y!=c.y){temp1.y=y*c.y;temp1.x=x*c.x;}returntemp1;}ComplexComplex::operator/(Complexc)//定

6、义/重载函数{Complextemp1;if(y!=c.y){temp1.y=y*c.x;temp1.x=x*c.y;}returntemp1;}intmain(){ComplexA1(3,2),A2(5,7),A3,A4,A5,A6;//定义六个类的对象A1.print();//输出分数A2.print();A3=A1+A2;//分数相加A3.print();A4=A1-A2;//分数相减A4.print();A5=A1*A2;//分数相乘A5.print();A6=A1/A2;//分数相除A6.print();ret

7、urn0;}2.(注释同上)#include//usingnamespacestd;classComplex{public:Complex(intX=0,intY=0){x=X;y=Y;}voidgys(){intt;t=x%y;while(t!=1){x=y;y=t;t=x%y;}}voidprint(){intz;if((xy)&&(y!=1)){z=x/y;cout<

8、<")"<

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。