#include<stdio.h> #include<math.h> int main(void) { double a,b,c; double p,q; scanf("%lf%lf%lf",&a,&b,&c); p=-b/(2*a); if(fabs(b*b-4*a*c)<1.0e-6 || b*b-4*a*c>=0 ) { q=sqrt(b*b-4*a*c)/(2*a); printf("x1=%.3lf x2=%.3lf",p+q,p-q); } else if(b*b-4*a*c < 0) { q=(sqrt(4*a*c-b*b))/(2*a); printf("x1=%.3lf+%.3lfi x2=%.3lf-%.3lfi",p,q,p,q); } return 0; }
0.0分
3 人评分
#include<stdio.h> #include<math.h> int main() { double a,b,c; double p,q; scanf("%lf%lf%lf",&a,&b,&c); p=-b/(2*a); { q=sqrt(b*b-4*a*c)/(2*a); if(fabs(b*b-4*a*c)<1e-6||b*b-4*a*c>=0) printf("%.3lf %.3lf",p+q,p-q); else if(b*b-4*a*c<0) printf("%.3lf+%.3lfi %.3lf+%.3lfi",p,q,p,q); } return 0; } 想知道哪错了