ax^2+bx+c=0
,其中 a、b、c 为已知常数,x 为未知变量。求解一元二次方程的根可以使用公式法或配方法等方式,其中公式法是最常见的求解方式之一。x = (-b ± sqrt(b^2 - 4ac)) / 2a
其中,sqrt 为平方根函数,b^2-4ac 为判别式,当判别式大于 0 时,方程有两个实数根;当判别式等于 0 时,方程有一个实数根;当判别式小于 0 时,方程没有实数根,但有两个共轭复数根。#include <stdio.h> #include <math.h> int main() { double a, b, c, discriminant, root1, root2, realPart, imagPart; printf("请输入a、b、c的值:"); scanf("%lf %lf %lf", &a, &b, &c); discriminant = b * b - 4 * a * c; // 判断根的个数 if (discriminant > 0) { root1 = (-b + sqrt(discriminant)) / (2 * a); root2 = (-b - sqrt(discriminant)) / (2 * a); printf("方程有两个实根:root1 = %.2lf,root2 = %.2lf\n", root1, root2); } else if (discriminant == 0) { root1 = root2 = -b / (2 * a); printf("方程有一个实根:root1 = root2 = %.2lf\n", root1); } else { realPart = -b / (2 * a); imagPart = sqrt(-discriminant) / (2 * a); printf("方程有两个虚根:root1 = %.2lf + %.2lf i,root2 = %.2lf - %.2lf i\n", realPart, imagPart, realPart, imagPart); } return 0; }其中,变量 a、b、c 分别表示一元二次方程 ax^2+bx+c=0 中的系数,discriminant 表示判别式,root1、root2 表示方程的两个实根,realPart、imagPart 表示方程的两个虚根。
本文链接:http://task.lmcjl.com/news/15752.html