#include <stdio.h>
#include <math.h>
float a,b,c,result;
void underZero(){
float part1 = (-1)*b/(2*a);
float part2 = sqrt((-1)*(b*b-4*a*c))/(2*a);
printf("x1=%.3f+%.3fi x2=%.3f+%.3fi\n",part1,part2,part1,part2);
}
void equalsZero(){
float root = ((-1)*b+sqrt(b*b-4*a*c))/(2*a);
printf("x1=%.3f x2=%.3f\n",root,root);
}
void aboveZero(){
float x1 = ((-1)*b+sqrt(b*b-4*a*c))/(2*a);
float x2 = ((-1)*b-sqrt(b*b-4*a*c))/(2*a);
printf("x1=%.3f x2=%.3f\n",x1,x2);
}
void check(){
if(result < 0)
underZero();
else if(result == 0)
equalsZero();
else
aboveZero();
}
int main()
{
scanf("%f%f%f",&a,&b,&c);
result = b*b - 4*a*c;
check();
return 0;
}
数据结构 C语言(2)求一元二次方根(包括虚根)
猜你喜欢
转载自blog.csdn.net/Stephanie17395/article/details/82822070
今日推荐
周排行