求复数加减乘除的C语言程序,编译没错误但得不到正确的结果,求高手帮忙。跪谢。。。0
#include
#include
#include
struct com{
double real;
double im;
};
struct com jia(struct com z1,struct com z2)
{struct com x;
x.real=z1.real+z2.real;
x.im=z1.im+z2.im;
return x;
}
struct com jian(struct com z1,struct com z2)
{struct com y;
y.real=z1.real-z2.real;
y.im=z1.im-z2.im;
return y;
}
struct com cheng(struct com z1,struct com z2)
{struct com m;
m.real=z1.real*z2.real-z1.im*z2.im;
m.im=z1.real*z2.im+z1.im*z2.real;
return m;
}
struct com chu(struct com z1,struct com z2)
{struct com n;
n.real=(z1.real*z2.im+z1.im*z2.real)/(pow(z2.real,2)+pow(z2.im,2));
n.im=(z1.im*z2.real-z1.real*z2.im)/(pow(z2.real,2)+pow(z2.im,2));
return n;
}
void main()
{struct com p,q;
struct com j1,j2,j3,j4;
printf("please input two complexes\n");
scanf("%f,%f,%f,%f",&p.real,&p.im,&q.real,&q.im);
printf("complex 1: %4.2f+%4.2f i\n complex 2: %4.2f+%4.2f i\n",p.real,p.im,q.real,q.im);
j1=jia(p,q);
printf("liang shu zhi he %.2f+%.2f i\n",j1.real,j1.im);
j2=jian(p,q);
printf("liang shu zhi cha %.2f+%.2f i\n",j2.real,j2.im);
j3=cheng(p,q);
printf("liang shu zhi ji %.2f+%.2f i\n",j3.real,j3.im);
j4=chu(p,q);
printf("liang shu zhi shang %.2f+%.2f i\n",j4.real,j4.im);
}