level 7
鸢-纶
楼主
有大佬能告诉我为什么这个程序有的数能算对,有的就算错了吗?我看了好长时间都没看出来
# include <stdio.h>
# include <math.h>
int main (void)
{
double a, b, c;
printf ("请按顺序输入一元二次方程的二次项系数,一次项系数,常数项,中间以空格隔开,输入完毕请按回车,谢谢配合,不配合也没关系反正又不是我在解方程。\n");
scanf ("%lf %lf %lf",&a,&b,&c);
double delta;
double x1;
double x2;
delta = (b*b)-(4.0*a*c);
if (delta>0)
{
x1=(-b + sqrt(delta)) / 2.0*a;
x2=(-b - sqrt(delta)) / 2.0*a;
printf
("该方程有两个解,%lf,%lf\n",x1,x2);
}
else if (delta == 0)
{
x1=-b/(2.0*a);
x2=x1;
printf
("该方程有唯一解,x1=x2=%lf\n",x1=x2);
}
else
{
printf ("该方程无解\n");
}
return 0;
}
2017年07月23日 13点07分
1
# include <stdio.h>
# include <math.h>
int main (void)
{
double a, b, c;
printf ("请按顺序输入一元二次方程的二次项系数,一次项系数,常数项,中间以空格隔开,输入完毕请按回车,谢谢配合,不配合也没关系反正又不是我在解方程。\n");
scanf ("%lf %lf %lf",&a,&b,&c);
double delta;
double x1;
double x2;
delta = (b*b)-(4.0*a*c);
if (delta>0)
{
x1=(-b + sqrt(delta)) / 2.0*a;
x2=(-b - sqrt(delta)) / 2.0*a;
printf
("该方程有两个解,%lf,%lf\n",x1,x2);
}
else if (delta == 0)
{
x1=-b/(2.0*a);
x2=x1;
printf
("该方程有唯一解,x1=x2=%lf\n",x1=x2);
}
else
{
printf ("该方程无解\n");
}
return 0;
}