以下是用 C 语言编写的求解一元二次方程 ax^2 + bx + c = 0 的根的程序:
#include <stdio.h>
#include <math.h>
int main()
{
double a, b, c; // 一元二次方程的系数
double delta; // 一元二次方程的判别式
double x1, x2; // 一元二次方程的根
printf("请输入一元二次方程的系数(a, b, c):\n");
scanf("%lf%lf%lf", &a, &b, &c);
delta = b * b - 4 * a * c; // 计算判别式
if (delta >= 0) {
x1 = (-b + sqrt(delta)) / (2 * a); // 计算第一个根
x2 = (-b - sqrt(delta)) / (2 * a); // 计算第二个根
printf("该方程的根为:%.2lf, %.2lf\n", x1, x2);
} else {
printf("该方程无实数根\n");
}
return 0;
}
以上程序中,首先从键盘输入一元二次方程的系数 a、b、c,然后根据公式计算出方程的判别式 delta,如果 delta 大于等于 0,就计算出方程的两个实数根 x1 和 x2 并输出,否则输出方程无实数根。其中,sqrt 函数用于计算平方根,需要包含头文件 math.h。