运用C语言要求由健盘输入 a,b,c,解得 ax^2+bx+c=0 方程的 根。
时间: 2024-10-25 09:15:29 浏览: 18
c代码-求ax平方+bx+c+=0
5星 · 资源好评率100%
在C语言中,要实现这个功能,你可以使用数学库`math.h`里的函数,特别是`sqrt()`来计算平方根,并处理用户输入的a、b和c值。这里是一个简单的流程:
首先,你需要定义一个函数来计算二次方程的根,这通常通过公式 `-b ± sqrt(b² - 4ac) / (2a)` 来实现,如果`b² - 4ac`小于零,则表示无实数根。
```c
#include <stdio.h>
#include <math.h>
void calculate_roots(float a, float b, float c) {
float discriminant = b * b - 4 * a * c;
if (discriminant >= 0) {
float root1 = (-b + sqrt(discriminant)) / (2 * a);
float root2 = (-b - sqrt(discriminant)) / (2 * a);
printf("Roots are: %.2f and %.2f\n", root1, root2);
} else {
printf("The equation has no real roots.\n");
}
}
int main() {
float a, b, c;
// 获取用户输入
printf("Enter the coefficients a, b, and c for the quadratic equation ax^2 + bx + c = 0: ");
scanf("%f %f %f", &a, &b, &c);
// 计算并打印根
calculate_roots(a, b, c);
return 0;
}
```
在这个程序中,用户会被提示输入三个系数,然后程序会计算并显示方程的根。如果方程无实数根,它会给出相应的提示。
阅读全文