6-6 复数类 (5 分)
- 已知一个名为Complex的复数类,这个类包含: (1)私有成员:实部、虚部,且均为int 型 (2)公有的带默认形参值的构造函数、复制构造函数 (3)公有成员函数Display,其作用为显示复数 要求: (1)实现满足上述属性和行为的Complex类定义; (2)设计函数AddComplex,函数AddComplex功能为实现两个复数相加,要求该函数的形参为复数类的常引用; (3)保证如下主函数能正确运行。
裁判测试程序样例:
/* 请在这里填写答案 */ int main(){ int x,y; cin>>x>>y; Complex c0(x,y); Complex c1(c0); cout<<"c1 is: "; c1.Display(); cin>>x>>y; Complex c2(x,y); cout<<"c2 is: "; c2.Display(); Complex c3; c3 = AddComplex(c1,c2); cout<<"c3 is: "; c3.Display(); return 0; }
输入样例:
在这里给出一组输入。例如:
2 -3
3 4
输出样例:
在这里给出相应的输出。例如:
c1 is: 2-3i
c2 is: 3+4i
c3 is: 5+1i
参考答案:
#include<iostrem>
using namespace std;
class Complex{
public :
int shi;
int xu;
public :
Complex(int a,int b){
shi=a;
xu=b;
}
Compiex(const Complex&C){
shi=C.shi;
xu=C.xu;
}
Complex(){shi;xu;}
void Display(){
if(xu==0){
cout<<shi<<endl;
}
else if(xu>0){cout<<shi<<"+"<<xu<<"i"<<endl;}
else cout<<shi<<xu<<"i"<<endl;
}
};
Complex AddComplex(Complex c1,Complex c2){
return Complex( c1.shi+c2.shi,c1.xu+c2.xu);
}