用C语言求解一元二次方程
发布网友
发布时间:2022-05-02 17:35
我来回答
共1个回答
热心网友
时间:2022-06-21 02:07
#include <stdio.h>
#include <math.h>
int main()
{
double a, b, c, d, x1, x2;
while (scanf("%lf%lf%lf", &a, &b, &c) != EOF)
{
d = b * b - 4 * a * c;
if (d < 0)
{
printf("无解\n");
}
else if (d == 0)
{
x1 = (-b + sqrt(d)) / (2 * a);
x2 = (-b - sqrt(d)) / (2 * a);
printf("%.2lf %.2lf\n", x1, x2);
}
else
{
x1 = (-b + sqrt(d)) / (2 * a);
x2 = (-b - sqrt(d)) / (2 * a);
if (x1 > x2)
{
printf("%.2lf %.2lf\n", x1, x2);
}
else if (x1 < x2)
{
printf("%.2lf %.2lf\n", x2, x1);
}
}
}
return 0;
}
追问麻烦问下,为什么不能一开始就定义好x1和x2的解答式呢