求一元二次方程的根,c语言
时间: 2024-09-15 14:12:24 浏览: 108
求解一元二次方程ax^2 + bx + c = 0的根,通常会使用公式法或者通过数值计算如牛顿迭代法。在C语言中,可以编写函数来处理这种情况。这里是一个基础版本的函数,它使用了公式法:
```c
#include <stdio.h>
#include <math.h>
double quadratic_root(double a, double b, double c) {
if (a == 0) {
printf("错误:系数a不能为零");
return - 4 * a * c;
if (delta < 0) {
printf("复杂的复数根: %.2f + %.2fi\n", -b / (2*a), sqrt(-delta) / (2*a));
} else if (delta == 0) {
printf("唯一的实根: %.2f\n", -b / (2*a));
} else {
printf("两个实根: %.2f 和 %.2f\n", (-b + sqrt(delta)) / (2*a), (-b - sqrt(delta)) / (2*a));
}
return 0;
}
int main() {
double a, b, c;
printf("请输入一元二次方程的系数a, b, c: ");
scanf("%lf %lf %lf", &a, &b, &c);
quadratic_root(a, b, c);
return 0;
}
```
阅读全文