设计一个可进行复数运算的程序2.基本要求实现下列六种基本运算:1)由输入的实部和虚部生成一个复数;2)两个复数求和;3)两个复数求差;4)两个复数的求积;(a+bi)*(c+di)=(ac-bd)+(ad+bc)i5)从已知复数中分离出实部;6)从已知复数中分离出虚部。运算结果以相应的复数或实数的表示形式显示。三.实验环境Microsoft Visual C++ 6.0四.测试数据对下列各对数据实现求和。(1)0;0;应输出“0”(2)3.1, 0;4.22, 8.9;应输出“7.32+i8.9”(3)-1.33, 2.34;0.1, -6.5;应输出“-1.23-i4.16”(4)0, 9.7;-2.1, -9.7;应输出“-2.1”(5)7.7, -8;-7.7, 0;应输出“-i8”五.实验报告要求(手写) (1)实验目的 (2)实验内容 (3)程序代码 (4)程序测试结果 (5)实验中遇到的问题及解决方法(6)实验体会实验要点typedef struct{ double real; double img;}ComplexNumber;部分参考代码void CreateComplexNumber(ComplexNumber *c,double a,double b){ c->real=a; c->img=b; return;}void AddComplexNumber(ComplexNumber *c,ComplexNumber c1,ComplexNumber c2){ c->real=c1.real+c2.real; c->img=c1.img+c2.img; return;}void SubComplexNumber(ComplexNumber *c,ComplexNumber c1,ComplexNumber c2){ c->real=c1.real-c2.real; c->img=c1.img-c2.img; return;}void MultiComplexNumber(ComplexNumber *c,ComplexNumber c1,ComplexNumber c2){ c->real=c1.real*c2.real-c1.img*c2.img; c->img=c1.real*c2.img+c1.img*c2.real; return;}void ConComplexNumber(ComplexNumber *c,ComplexNumber c1){ c->real=c1.real; c->img=c1.img*(-1); return; |