C语言编写程序,从键盘输入一个二元一次方程ax2+bx+c=0的三个参数a、b、c(均为整数),求此方程的实根。如果方程有实根,则输出实根(精确到小数点后2位,较大实根在前),如果没有实根,则输出没有实根的信息。
时间: 2024-03-10 10:47:43 浏览: 88
C语言实验-有3个整数a,b,c,由键盘输入,编写程序输出其中绝对值最大(或最小)的数。
5星 · 资源好评率100%
好的,以下是用C语言实现的代码:
```c
#include <stdio.h>
#include <math.h>
int main() {
int a, b, c;
float x1, x2, delta;
printf("请输入二元一次方程ax2+bx+c=0的三个参数a、b、c:");
scanf("%d %d %d", &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("实根为:%.2f, %.2f\n", x1 > x2 ? x1 : x2, x1 > x2 ? x2 : x1);
} else {
printf("没有实根\n");
}
return 0;
}
```
以上代码中,先通过公式计算出方程的判别式 delta,然后判断 delta 是否大于等于 0。如果是,则计算出实根 x1 和 x2,并输出较大实根在前的结果;如果不是,则输出没有实根的信息。注意,这里使用了 math.h 头文件中的 sqrt 函数来计算平方根。另外,使用三目运算符来输出实根,可以简化代码。
阅读全文