9-1-实现复数的运算符重载
2014-04-22 22:21
176 查看
01./* 02.* 程序的版权和版本声明部分: 03.* Copyright (c) 2011, 烟台大学计算机学院 04.* All rights reserved. 05.* 文件名称:test.cpp 06.* 作 者:刘芳 07.* 完成日期:2014 年04 月 22 日 08.* 版 本 号:v1.0 09.* 对任务及求解方法的描述部分: 10.* 输入描述:无 11.* 问题描述: 输入复数的实部与虚部 12.* 程序输出: 输出复数 13.* 问题分析:略 14.* 算法设计:略 15.*/
#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); Complex operator-(); friend istream& operator>>(istream&,Complex&); friend ostream& operator<<(ostream&,Complex&); void display(); private: double real; double imag; }; Complex Complex::operator-() { Complex c; c.real=0-real; c.imag=0-imag; return c; } istream& operator>>(istream& input,Complex& c1) { cout<<"请输入虚数的实部和虚部:"<<endl; input>>c1.real>>c1.imag; return input; } ostream& operator<<(ostream& output,Complex& c1) { if(c1.imag<0) output<<"("<<c1.real<<c1.imag<<"i)"<<endl; else if(c1.imag>0) output<<"("<<c1.real<<"+"<<c1.imag<<"i)"<<endl; else output<<"("<<c1.real<<")"<<endl; return output; } Complex Complex::operator+(Complex &c2) { Complex c; c.real=real+c2.real; c.imag=imag+c2.imag; return c; } Complex Complex::operator-(Complex &c2) { Complex c; c.real=real-c2.real; c.imag=imag-c2.imag; return c; } Complex Complex::operator*(Complex &c2) { Complex c; c.real=real*c2.real; c.imag=imag*c2.imag; return c; } Complex Complex::operator/(Complex &c2) { Complex c; c.real=real/c2.real; c.imag=imag/c2.imag; return c; } void Complex::display() { 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(); cin>>c3; cout<<c3<<endl; return 0; }
相关文章推荐
- 第八周上机实践项目——实现复数类中的运算符重载(3)
- 第12周项目-1实现复数类中的运算符重载 (3)
- 第八周项目一任务1——实现复数类中的运算符重载
- C++实现的复数运算符重载
- 第八周上机项目1.1实现复数中的运算符重载
- 第八周项目一——实现复数类中的运算符重载(3)
- 第十二周上机时间项目——项目1—实现复数类中的运算符重载
- 实现复数类中的友元函数运算符重载
- 第八周项目:实现复数类中的运算符重载(1)
- 第12周项目1:实现复数类中的运算符重载(2)
- 2014-第八周项目一--用成员函数实现复数的运算符重载
- 第八周 项目一:实现复数类中的运算符重载
- 第十二周实践项目1————实现复数类中的运算符重载之成员函数
- 15第八周项目一——实现复数类中的运算符重载(友元函数)
- 第十二周项目1.2—实现复数类中的运算符重载(友元函数)
- 第八周项目一:实现复数类中的运算符重载(二)
- 第八周项目一 2用友元函数实现复数类中的运算符重载
- 第八周——友元函数实现复数类中运算符重载
- 第十二周项目2:实现复数类中的运算符重载(1)
- 第十二周项目1.2—实现复数类中的运算符重载(友元函数)