先感谢各位的指导,真的不会写,写了一个多小时也还是不对,人都傻了。
3条回答 默认 最新
- 叶灼hua 2023-04-04 16:22关注
#include<stdio.h> #include<math.h> int main() { double a,b,c,d,x,r,m; double x1=0; double x2=0; scanf("%lf %lf %lf",&a,&b,&c); d=b*b-(4*a*c); printf("d=%.2lf\n",d); if(a==0&&b==0&&c==0){ printf("Zero Equation"); }else if(a==0&&b==0&&c!=0){ printf("Not An Equation"); }else if(d==0) { //德尔塔d是为0时,只有一个实数根。 x=(-b)/(2*a); printf("%.2lf\n",x); } else if(d>0){ x1=(-b+sqrt(d))/(2*a); x2=(-b-sqrt(d))/(2*a); if(x1>x2){ printf("x1=%.2lf,x2=%.2lf",x1,x2); } else{ printf("x1=%.2lf,x2=%.2lf",x2,x1); } }else{ r=(-b)/(2*a); m=sqrt(-d)/(2*a); printf("%x1=.2lf+%.2lfi,x2=%.2lf-%.2lfi\n",r,m,r,m); } return 0; }
祝你成功!
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用