解题思路:废话不多说,直接看代码
注意事项:▲ < 0 时,方程没有实数根,但是会有2个共轭复根
参考代码:
#include<stdio.h>
#include<math.h>
void q_gen(double a, double b, double c)
{
double x1 = 0, x2 = 0;
double t = pow(b, 2) - 4 * a * c;
if (t > 0)
{
x1 = ((-b) + sqrt(t)) / (2 * a);
x2 = ((-b) - sqrt(t)) / (2 * a);
printf("x1=%.3lf x2=%.3lf\n", x1, x2);
}
else if (t == 0)
{
x1 = (-b) / (2 * a);
x2 = (-b) / (2 * a);
printf("x1=%.3lf x2=%.3lf\n", x1, x2);
}
else
{
double m, n;
m = (-b) / (2 * a);
n = sqrt(-t) / (2 * a);
printf("x1=%.3lf+%.3lfi x2=%.3lf-%.3lfi", m, n, m, n);
//printf("x1 = %.3lf+%.3lfi x2 = %.3lf-%.3lf\n", (-b) / (2 * a), sqrt(-t) / (2 * a), (-b) / (2 * a), sqrt(-t) / (2 * a));
}
}
int main()
{
double a, b, c;
scanf("%lf %lf %lf", &a, &b, &c);
q_gen(a, b, c);
return 0;
}
0.0分
1 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复