阅读量:2
以下是一个用C语言编写的一元二次方程求根的例子:
#include <stdio.h> #include <math.h> int main() { double a, b, c; double discriminant, root1, root2; printf("请输入一元二次方程的系数:\n"); printf("a = "); scanf("%lf", &a); printf("b = "); scanf("%lf", &b); printf("c = "); scanf("%lf", &c); discriminant = b * b - 4 * a * c; if (discriminant > 0) { root1 = (-b + sqrt(discriminant)) / (2 * a); root2 = (-b - sqrt(discriminant)) / (2 * a); printf("方程有两个实根:\n"); printf("根1 = %lf\n", root1); printf("根2 = %lf\n", root2); } else if (discriminant == 0) { root1 = -b / (2 * a); printf("方程有一个实根:\n"); printf("根 = %lf\n", root1); } else { double realPart = -b / (2 * a); double imaginaryPart = sqrt(-discriminant) / (2 * a); printf("方程有两个虚根:\n"); printf("根1 = %lf + %lfi\n", realPart, imaginaryPart); printf("根2 = %lf - %lfi\n", realPart, imaginaryPart); } return 0; }
这段程序首先要求用户输入一元二次方程的系数a、b和c,然后计算判别式discriminant。根据判别式的值,程序判断方程的根的情况,并输出结果。如果判别式大于0,则方程有两个实根;如果判别式等于0,则方程有一个实根;如果判别式小于0,则方程有两个虚根。