以下是用 C 语言编写的求解上述方程根的程序: ```c #include <stdio.h> #include <math.h> // 计算方程根的函数 void solveEquation(double a, double b, double double c) { 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("方程有两个不等实根:%.2f 和 %.2f\n", root1, root2); } else if (discriminant == 0) { // 有两个相等实根 double root = -b / (2 * a); printf("方程有两个相等实根:%.2f\n", root); } else { // 没有实根 printf("方程没有实根\n"); } } int main() { double a, b, c; printf("请输入 a 的值:"); scanf("%lf", &a); printf("请输入 b 的值:"); scanf("%lf", &b); printf("请输入 c 的值:"); scanf("%lf", &c); solveEquation(a, b, c); return 0; } ``` 额外需要注意的逻辑点: 1. 输入的系数值要保证合理性,避免除以 0 等错误。 2. 对于输出的根,要根据精度需求进行合理的格式化。 3. 考虑对输入的异常值(如非数字)进行处理,增强程序的健壮性。 [2024-12-12 22:09:28 | AI写代码神器 | 409点数解答]