编程,输入一元二次方程ax2+bx+c=0的系数a,b,c,假定满 足b2-4ac>0,输出方程的两个根。结果保留两位小数。
时间: 2024-10-20 20:17:36 浏览: 42
在C语言中,你可以使用`sqrt()`函数(需要包含头文件`<math.h>`)来计算平方根,并使用`printf`格式控制符来限制输出的小数位数。以下是一个简单的程序,它接受用户输入的一元二次方程的系数并计算其解:
```c
#include <stdio.h>
#include <math.h>
int main() {
double a, b, c, discriminant, root1, root2;
// 获取用户输入的系数
printf("Enter the coefficients for ax^2 + bx + c = 0 (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输出结果,保留两位小数
printf("The roots are: %.2f and %.2f\n", root1, root2);
} else {
printf("The equation has no real roots.\n");
}
return 0;
}
```
当你运行这个程序时,用户会被提示输入三个系数,然后程序会计算并打印出两个实数根(如果存在的话),保留到小数点后两位。
阅读全文