欢迎来到天天文库
浏览记录
ID:55261188
大小:85.00 KB
页数:14页
时间:2020-05-08
《c++运算符重载习题.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Task8-1/*1.定义一个复数类Complex,重载运算符“+”,使之能用于复数的加法运算。将运算符函数重载为非成员、非友元的普通函数。编写程序,求两个复数之和*/#includeusingnamespacestd;classComplex{public:Complex(){real=0;imag=0;}Complex(doubler,doublei){real=r;imag=i;}voiddisplay();doublereal;doubleimag;};voidComplex::display(){cout<<"("<2、imag<<"i)";}Complexoperator+(Complex&c1,Complex&c2){Complexp;p.real=c1.real+c2.real;p.imag=c1.imag+c2.imag;returnp;}intmain(){Complexc1(3,5),c2(2,5),c3;c1.display();cout<<"+";c2.display();cout<<"=";c3=c1+c2;c3.display();}Task8-2/*2.定义一个复数类Complex,重载运算符“+”、”-“、”*”、”/”,使之能用于复数的加、减、乘、除。运算符重3、载函数作为Complex类的成员函数,编程,分别求两个复数之和差积商。*/#includeusingnamespacestd;classComplex{public:Complex(){real=0;imag=0;}Complex(doubler,doublei){real=r;imag=i;}Complexoperator+(Complex&c2);Complexoperator-(Complex&c2);Complexoperator*(Complex&c2);Complexoperator/(Complex&c2);voiddisplay();4、private:doublereal;doubleimag;};ComplexComplex::operator+(Complex&c2){Complexc;c.real=real+c2.real;c.imag=imag+c2.imag;returnc;}ComplexComplex::operator-(Complex&c2){Complexc;c.real=real-c2.real;c.imag=imag-c2.imag;returnc;}ComplexComplex::operator*(Complex&c2){Complexc;c.real=real*c2.re5、al;c.imag=imag*c2.imag;returnc;}ComplexComplex::operator/(Complex&c2){Complexc;c.real=(real*c2.real+imag*c2.imag)/(c2.real*c2.real+c2.imag*c2.imag);c.imag=(imag*c2.real-real*c2.imag)/(c2.real*c2.real+c2.imag*c2.imag);returnc;}voidComplex::display(){cout<<"("<6、}intmain(){Complexc1(3,4),c2(5,-10),c3;c3=c1+c2;cout<<"c1+c2=";c3.display();c3=c1-c2;cout<<"c1-c2=";c3.display();c3=c1*c2;cout<<"c1*c2=";c3.display();c3=c1/c2;cout<<"c1/c2=";c3.display();return0;}Task8-3/*3.有两个矩阵a和b,均为n行m列(m、n的值自己给出),求两个矩阵之和、差、积、商,重载运算符“+”、”-“、”*”、”/”,使之能用于矩阵向加减乘除,如c=a+b7、、c=a*b。*/#include#definen2#definem3usingnamespacestd;classMatrix//定义Matrix类{public:Matrix();//默认构造函数friendMatrixoperator+(Matrix&,Matrix&);//重载运算符“+”friendMatrixoperator-(Matrix&,Matrix&);friendMatrixoperator*(Matrix&,Matrix&);friendMatrixoperator/(Matrix&,Matri
2、imag<<"i)";}Complexoperator+(Complex&c1,Complex&c2){Complexp;p.real=c1.real+c2.real;p.imag=c1.imag+c2.imag;returnp;}intmain(){Complexc1(3,5),c2(2,5),c3;c1.display();cout<<"+";c2.display();cout<<"=";c3=c1+c2;c3.display();}Task8-2/*2.定义一个复数类Complex,重载运算符“+”、”-“、”*”、”/”,使之能用于复数的加、减、乘、除。运算符重
3、载函数作为Complex类的成员函数,编程,分别求两个复数之和差积商。*/#includeusingnamespacestd;classComplex{public:Complex(){real=0;imag=0;}Complex(doubler,doublei){real=r;imag=i;}Complexoperator+(Complex&c2);Complexoperator-(Complex&c2);Complexoperator*(Complex&c2);Complexoperator/(Complex&c2);voiddisplay();
4、private:doublereal;doubleimag;};ComplexComplex::operator+(Complex&c2){Complexc;c.real=real+c2.real;c.imag=imag+c2.imag;returnc;}ComplexComplex::operator-(Complex&c2){Complexc;c.real=real-c2.real;c.imag=imag-c2.imag;returnc;}ComplexComplex::operator*(Complex&c2){Complexc;c.real=real*c2.re
5、al;c.imag=imag*c2.imag;returnc;}ComplexComplex::operator/(Complex&c2){Complexc;c.real=(real*c2.real+imag*c2.imag)/(c2.real*c2.real+c2.imag*c2.imag);c.imag=(imag*c2.real-real*c2.imag)/(c2.real*c2.real+c2.imag*c2.imag);returnc;}voidComplex::display(){cout<<"("<6、}intmain(){Complexc1(3,4),c2(5,-10),c3;c3=c1+c2;cout<<"c1+c2=";c3.display();c3=c1-c2;cout<<"c1-c2=";c3.display();c3=c1*c2;cout<<"c1*c2=";c3.display();c3=c1/c2;cout<<"c1/c2=";c3.display();return0;}Task8-3/*3.有两个矩阵a和b,均为n行m列(m、n的值自己给出),求两个矩阵之和、差、积、商,重载运算符“+”、”-“、”*”、”/”,使之能用于矩阵向加减乘除,如c=a+b7、、c=a*b。*/#include#definen2#definem3usingnamespacestd;classMatrix//定义Matrix类{public:Matrix();//默认构造函数friendMatrixoperator+(Matrix&,Matrix&);//重载运算符“+”friendMatrixoperator-(Matrix&,Matrix&);friendMatrixoperator*(Matrix&,Matrix&);friendMatrixoperator/(Matrix&,Matri
6、}intmain(){Complexc1(3,4),c2(5,-10),c3;c3=c1+c2;cout<<"c1+c2=";c3.display();c3=c1-c2;cout<<"c1-c2=";c3.display();c3=c1*c2;cout<<"c1*c2=";c3.display();c3=c1/c2;cout<<"c1/c2=";c3.display();return0;}Task8-3/*3.有两个矩阵a和b,均为n行m列(m、n的值自己给出),求两个矩阵之和、差、积、商,重载运算符“+”、”-“、”*”、”/”,使之能用于矩阵向加减乘除,如c=a+b
7、、c=a*b。*/#include#definen2#definem3usingnamespacestd;classMatrix//定义Matrix类{public:Matrix();//默认构造函数friendMatrixoperator+(Matrix&,Matrix&);//重载运算符“+”friendMatrixoperator-(Matrix&,Matrix&);friendMatrixoperator*(Matrix&,Matrix&);friendMatrixoperator/(Matrix&,Matri
此文档下载收益归作者所有