输入一元二次方程的3个系数a,b,c的值,输出其两个根。
时间: 2024-09-28 20:16:57 浏览: 7
要计算一元二次方程 ax^2 + bx + c = 0 的解,我们可以使用求根公式。根据求根公式,如果 a ≠ 0(否则方程不是二次方程),则它的根可以通过以下公式计算:
\[ x_1, x_2 = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a} \]
下面是用 C 语言编写的程序,它接受输入的三个系数 a、b 和 c,然后计算并输出两个根:
```c
#include <stdio.h>
#include <math.h>
void calculateRoots(double a, double b, double c) {
// 检查判别式是否大于等于0
double discriminant = b * b - 4 * a * c;
if (discriminant >= 0) {
double root1 = (-b + sqrt(discriminant)) / (2 * a);
double root2 = (-b - sqrt(discriminant)) / (2 * a);
printf("The two roots are:\n");
printf("x1 = %.2lf\n", root1);
printf("x2 = %.2lf\n", root2);
} else {
printf("The equation has complex roots.\n");
}
}
int main() {
double a, b, c;
printf("Enter the coefficients a, b, and c for the quadratic equation:\na = ");
scanf("%lf", &a);
printf("b = ");
scanf("%lf", &b);
printf("c = ");
scanf("%lf", &c);
calculateRoots(a, b, c);
return 0;
}
```