第八周C++上机报告(项目一实现复数类中的运算符重载)
2013-04-19 10:49
681 查看
任务一:用类的成员函数完成运算符的重载.
/* * 程序的版权和版本声明部分 * Copyright (c)2012, 烟台大学计算机学院学生 * All rightsreserved. * 文件名称 运算符的重载.cpp * 作者:王昕彤 * 完成日期: 2013年 4 月 19 日 * 版本号: v1.0 * 输入描述:无 * 问题描述:无 * 程序输出:无 */ #include <iostream> using namespace std; class Complex {public: Complex(){real=0;imag=0;} Complex(double r,double i){real=r;imag=i;} Complex operator+(Complex &c2); Complex operator-(Complex &c2); Complex operator*(Complex &c2); Complex operator/(Complex &c2); void display(); private: double real; double imag; }; //下面定义成员函数 Complex Complex::operator+(Complex &c2) { return Complex(real+c2.real,imag+c2.imag); } Complex Complex::operator-(Complex &c2) { return Complex(real-c2.real,imag-c2.imag); } Complex Complex::operator*(Complex &c2) { return Complex(real*c2.real,imag*c2.imag); } Complex Complex::operator/(Complex &c2) { return Complex(real/c2.real,imag/c2.imag); } void Complex::display() { if(imag>0) { cout<<real<<"+"<<imag<<"i"<<endl; } else if(imag==0) { cout<<real<<endl; } else if(imag<0) { cout<<real<<imag<<"i"<<endl; } } //下面是测试函数 int main() { Complex c1(3,4),c2(5,-10),c3; cout<<"c1="; c1.display(); cout<<"c2="; c2.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(); c3=c1/c2; cout<<"c1/c2="; c3.display(); return 0; }
运行结果:
相关文章推荐
- 第八周C++上机报告(项目三__实现Time类中的运算符重载)
- 第八周上机实践项目1-实现复数类中的运算符重载(类的成员函数)
- 2013第八周上机任务【项目1 实现复数类中的运算符重载】
- 2013第八周上机任务【项目1 实现复数类中的运算符重载(友元函数)】
- 第八周上机实践项目1-实现复数类中的运算符重载(可与double型运算的“基础工程”)
- 第八周C++上机报告(项目3__分数运算符重载)
- 第八周上机项目一实现复数类中的运算符重载
- 第八周上机实践项目1-实现复数类中的运算符重载(友元函数)
- 第八周项目1-实现复数类中的运算符重载(类的成员函数)
- c++第八周【任务1-3】实现复数类中的运算符重载
- 第八周项目一实现复数类中的运算符重载(3)
- C++第9周项目1 - 实现复数类中的运算符重载
- 第八周项目一实现复数类中运算符重载
- 《C++第八周实验报告1-1(1)》---复数类中的运算符重载用类的成员函数完成
- 第八周项目一实现复数类中的运算符重载(3)
- 第八周项目一 实现复数类中的运算符重载-(1)定义复数类重在运算符+-*/
- 第八周 项目1-实现复数类中的运算符重载(3)
- 第八周 项目1 实现复数类中的运算符重载
- 第八周项目一实现复数类中的运算符重载(2)
- 第八周项目1-实现复数类中的运算符重载(类的友元函数)