求助丨大家帮我看看这个程序问题出在哪里了,实在找不到了,救命
194
2026.03.14
2026.03.14
发布于 中国

#include <stdio.h>

typedefstruct{

double real;

double imag;

}Complex;

Complex Add_Complex(Complex c1,Complex c2){ Complex c3;

c3.real=c1.real+c2.real;

c3.imag=c1.imag+c2.imag;

return c3;

}

Complex Sub_Complex(Complex c1,Complex c2){ Complex c3;

c3.real=c1.real-c2.real;

c3.imag=c1.imag-c2.imag;

return c3;

}

Complex Mul_Complex(Complex c1,Complex c2){ Complex c3;

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

return c3;

}

Complex Div_Complex(Complex c1,Complex c2){ Complex c3; c3.real=(c1.real*c2.real+c1.imag*c2.imag)/(c2.real*c2.real+c2.imag*c2.imag);

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

return c3;

}

void Point_Complex(Complex c){

if(c.imag>=0){

printf("%lf+%lfi\n",c.real,c.imag);

}

else{

printf("%lf%lfi\n",c.real,c.imag);

}

}

int main() {

Complexc1,c2,c3;

printf("请输入第一个复数的实部和虚部:"); scanf("%lf%lf",&c1.real,&c2.real);

printf("请输入第二个复数的实部和虚部:"); scanf("%lf%lf",&c1.real,&c2.real);

c3=Add_Complex(c1,c2);

printf("\n加法结果:");

Point_Complex(c3);

c3=Sub_Complex(c1,c2);

printf("\n减法结果:");

Point_Complex(c3);

c3=Mul_Complex(c1,c2);

printf("\n乘法结果:");

Point_Complex(c3);

c3=Div_Complex(c1,c2);

printf("\n除法结果:");

Point_Complex(c3);

return 0;

}

评论 (4)