用c语言编写求方程ax2+bx+c=0的根,分别用三个函数分别求档b2-4ac大于0、等于0、小于0时的根。(使用全局变量)。在函数中注释说明定义本函数时的四要素:函数功能、函数名、函数返回值类型、函数参数列表。
时间: 2023-12-14 16:40:21 浏览: 129
c代码-求ax平方+bx+c+=0
5星 · 资源好评率100%
函数功能:求解一元二次方程ax^2+bx+c=0的根。
函数名:solveQuadraticEquation
函数返回值类型:void
函数参数列表:无
```c
#include <stdio.h>
#include <math.h>
double a, b, c; // 全局变量,存储方程的系数
// 求解b^2-4ac大于0时的根
void solvePositive() {
double delta = b * b - 4 * a * c;
double x1 = (-b + sqrt(delta)) / (2 * a);
double x2 = (-b - sqrt(delta)) / (2 * a);
printf("b^2-4ac > 0, x1 = %.2lf, x2 = %.2lf\n", x1, x2);
}
// 求解b^2-4ac等于0时的根
void solveZero() {
double x = -b / (2 * a);
printf("b^2-4ac = 0, x = %.2lf\n", x);
}
// 求解b^2-4ac小于0时的根
void solveNegative() {
double real = -b / (2 * a);
double imag = sqrt(-b * b + 4 * a * c) / (2 * a);
printf("b^2-4ac < 0, x1 = %.2lf + %.2lfi, x2 = %.2lf - %.2lfi\n", real, imag, real, imag);
}
int main() {
printf("Please enter coefficients a, b, c:\n");
scanf("%lf%lf%lf", &a, &b, &c);
double delta = b * b - 4 * a * c;
if (delta > 0) {
solvePositive();
} else if (delta == 0) {
solveZero();
} else {
solveNegative();
}
return 0;
}
```
阅读全文