C语言实现二次方程求根 - 完整代码示例
以下是使用C语言编程求解二次方程根的完整代码示例:
#include <stdio.h>
#include <math.h>
double root(double a, double b, double c);
int main()
{
double a, b, c, x;
printf('请输入二次方程的系数:');
scanf('%lf %lf %lf', &a, &b, &c);
x = root(a, b, c);
printf('方程的根为:%g\n', x);
return 0;
}
double root(double a, double b, double c)
{
double m, d, k;
if (a == 0) {
if (b != 0)
m = -c / b;
else if (c == 0)
printf('方程有无限多个解\n');
else
printf('方程无解\n');
}
else {
d = b * b - 4 * a * c;
if (d == 0)
m = -b / (2 * a);
else if (d > 0) {
double root1 = (-b + sqrt(d)) / (2 * a);
double root2 = (-b - sqrt(d)) / (2 * a);
printf('方程的两个实根为:%g,%g\n', root1, root2);
}
else {
k = sqrt(-d) / (2 * a);
printf('方程的两个复根为:%g + %gi,%g - %gi\n', -b / (2 * a), k, -b / (2 * a), k);
}
}
return m;
}
这段代码中,我们使用了scanf函数来接收用户输入的系数,然后调用root函数来计算二次方程的根,并使用printf函数来输出结果。
原文地址: https://www.cveoy.top/t/topic/MGj 著作权归作者所有。请勿转载和采集!