完整代码:
#include <stdio.h>
#include <stdlib.h>
typedef struct ComplexNum{
float a;
float b;
}ComplexNum;
ComplexNum Add (ComplexNum X,ComplexNum Y)
{
ComplexNum R;
R.a=X.a+Y.a;
R.b=X.b+Y.b;
return R;
}
ComplexNum Sub (ComplexNum X,ComplexNum Y)
{
ComplexNum R;
R.a=X.a-Y.a;
R.b=X.b-Y.b;
return R;
}
ComplexNum Mul (ComplexNum X,ComplexNum Y)
{
ComplexNum R;
R.a=X.a*Y.a-X.b*Y.b;
R.b=X.b*Y.a+X.a*Y.b;
return R;
}
void print (ComplexNum R)
{
if(R.b<0)
printf("%f%fi\n",R.a,R.b);
else
printf("%f+%fi\n",R.a,R.b);
}
int main()
{
ComplexNum X,Y;
X.a=3.5;X.b=5;
printf("X=");
print(X);
Y.a=2.9;Y.b=-7;
printf("Y=");
print(Y);
printf("Add:");
print(Add(X,Y));
printf("Sub:");
print(Sub(X,Y));
printf("Mul:");
print(Mul(X,Y));
}