# 第八周任务一（2）

#include <iostream>

using namespace std;
class Complex
{
public:
Complex(){real=0;imag=0;}
Complex(double r,double i){real=r;imag=i;}
friend Complex operator+(Complex &c1,Complex &c2);
friend Complex operator-(Complex &c1,Complex &c2);
friend Complex operator*(Complex &c1,Complex &c2);
friend Complex operator/(Complex &c1,Complex &c2);
void display();
private:
double real;
double imag;
};
//下面定义成员函数
Complex operator+(Complex &c1,Complex &c2)
{
return Complex (c1.real + c2.real,c1.imag + c2.imag);
}
Complex operator-(Complex &c1,Complex &c2)
{
return Complex (c1.real - c2.real,c1.imag - c2.imag);
}
Complex operator*(Complex &c1,Complex &c2)
{
Complex c;

c.real = c1.real * c2.real - c1.imag * c2.imag;
c.imag = c1.real * c2.imag + c1.imag * c2.real;

return c;
}
Complex operator/(Complex &c1,Complex &c2)
{
Complex c;

c.real = (c1.real * c2.real + c1.imag * c2.imag)/(c2.imag * c2.imag + c2.real * c2.real);
c.imag = (c1.imag * c2.real - c1.real * c2.imag)/(c2.imag * c2.imag + c2.real * c2.real);

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();
system("pause");
return 0;
}


• 本文已收录于以下专栏：

## mooc c语言第八周编程

• ceiling45688
• 2017年06月01日 09:36
• 598

## 第八周任务（一）2

#include using namespace std; class Complex { public: Complex(){real=0;imag=0;} Complex(dou...
• xuguochen99
• 2012年04月09日 18:19
• 271

## 第八周任务一（2）

• h_a_n
• 2012年04月10日 22:07
• 297

## Coursera机器学习-第八周-Unsupervised Learning(K-Means)

Clustering Unsuperivised Learning:Intruduction 典型的Supervised Learning 有一组附标记(y(i)y^{(i)})的训练数...
• dingchenxixi
• 2016年06月12日 09:30
• 2056

## 第八周任务一2

• mingmingbang666
• 2012年04月09日 19:09
• 209

## 中国大学MOOC-翁恺-C语言程序习题第八周

• Phenixfate
• 2015年01月20日 15:39
• 2373

## 第八周 任务一

/* 实验内容:实现复数类中的运算符重载定义一个复数类重载运算符+、-、*、/，使之能用于复数的加减乘除。 * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台...
• xgcfxl2011
• 2012年04月07日 19:54
• 415

## 第八周任务（一）

#include using namespace std; class Complex { public: Complex(){real=0;imag=0;} Complex(dou...
• xuguochen99
• 2012年04月09日 18:12
• 274

## 第八周 任务一

• liuxiangyi887
• 2012年04月09日 18:49
• 209

## 第八周任务2

/* (程序头部注释开始)  * 程序的版权和版本声明部分  * Copyright (c) 2011, 烟台大学计算机学院学生   * All rights reserved.  * 文件名...
• Richard_zy
• 2012年04月09日 19:16
• 594

举报原因： 您举报文章：第八周任务一（2） 色情 政治 抄袭 广告 招聘 骂人 其他 (最多只允许输入30个字)