用C语言任意输入一元二次方程的三个数,计算根后,根总是为共轭复数。是为什么呢?
/*编写程序:任意输入一元二次方程的系数a,b,c,计算并输出一元二次方程的所有根。*/#include#includevoidmain(){floata,b,c,x1,...
/*编写程序:任意输入一元二次方程的系数a, b, c,计算并输出一元二次方程的所有根。*/
#include
#include
void main()
{
float a,b,c,x1,x2,disc;
scanf("f%f%f%",&a,&b,&c);
disc=b*b-4*a*c;
if(fabs(a)<=1e-6)
{
x1=-c/b;
printf("%2.4f",x1);
}
else if(disc>=0)
{
x1=float(-b+sqrt(disc))/(2*a);
x2=float(-b-sqrt(disc))/(2*a);
printf("%2.4f%2.4f",x1,x2);
}
else(disc<0)
{
printf("根为共轭复数");
}
}
是哪里写错了吗? 展开
#include
#include
void main()
{
float a,b,c,x1,x2,disc;
scanf("f%f%f%",&a,&b,&c);
disc=b*b-4*a*c;
if(fabs(a)<=1e-6)
{
x1=-c/b;
printf("%2.4f",x1);
}
else if(disc>=0)
{
x1=float(-b+sqrt(disc))/(2*a);
x2=float(-b-sqrt(disc))/(2*a);
printf("%2.4f%2.4f",x1,x2);
}
else(disc<0)
{
printf("根为共轭复数");
}
}
是哪里写错了吗? 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询