#include "stdio.h"
#include "math.h"
void root1(float a, float b, float c)
{
float x1,x2;
x1=(-b+sqrt(b*b-4*a*c))/2/a;
x2=(-b-sqrt(b*b-4*a*c))/2/a;
printf("x1=%f x2=%f",x1,x2);
}
void root2(float a, float b, float c)
{
printf("x1=x2=%f",(sqrt(b*b-4*a*c)-b)/2/a);
}
void root3(float a, float b, float c)
{
float s,x;
s=-b/2/a;//实部
x=sqrt(4*a*c-b*b)/(2*a);//虚部
printf("x1=%f+%fi x2=%f-%fi",s,x,s,x);
}
void main()
{
float a,b,c,d;
printf("Input a b c:\n");
scanf("%f %f %f",&a,&b,&c);
d=b*b-4*a*c;
if(d>0) root1(a,b,c);
else if(d==0) root2(a,b,c);
else root3(a,b,c);
}
温馨提示:答案为网友推荐,仅供参考