求方程式ax^2+bx+c=0的根。
#include <stdio.h>
#include <stdlib.h>
#include<math.h>
int main()
{
int a,b,c,d;
double p,q,x1,x2;
printf("please input a,b,c:\n");
scanf("%d%d%d",&a,&b,&c);
d=b*b-4*a*c;
if(d>=0)
{
if(d==0)
{
x1=x2=-b/(2*a);
printf("x1=x2=%f\n",x1);
}
else{
x1=(-b+sqrt(d))/(2*a);
x2=(-b-sqrt(d))/(2*a);
printf("x1=%f\nx2=%f\n",x1,x2);
}
}
else{
p=-b/(2*a);
q=sqrt(-d)/(2*a);
printf("x1=%f+%fi\nx2=%f-%fi",p,q);
}
return 0;
}