c语言求ax²+bx+c=0方程的根,其中a,b,c从键盘输入。
时间: 2024-05-08 21:14:52 浏览: 134
c代码-求ax平方+bx+c+=0
以下是c语言代码:
```c
#include <stdio.h>
#include <math.h>
int main()
{
float a, b, c, x1, x2, discriminant;
printf("请输入a, b, c的值:");
scanf("%f %f %f", &a, &b, &c);
discriminant = b*b - 4*a*c;
if (discriminant > 0) {
x1 = (-b + sqrt(discriminant)) / (2*a);
x2 = (-b - sqrt(discriminant)) / (2*a);
printf("方程的两个根为:x1 = %.2f, x2 = %.2f", x1, x2);
}
else if (discriminant == 0) {
x1 = -b / (2*a);
printf("方程的根为:x1 = x2 = %.2f", x1);
}
else {
printf("方程无实根");
}
return 0;
}
```
首先,我们需要从键盘输入a、b、c的值。然后,我们计算判别式discriminant的值,用它来判断方程的根的情况。
如果判别式discriminant大于0,方程有两个不同的实根,我们可以使用求根公式计算出两个根x1和x2,并打印它们的值。
如果判别式discriminant等于0,方程有一个重根,我们可以使用求根公式计算出根x1,并将其打印两次。
如果判别式discriminant小于0,方程没有实根。我们只需打印"方程无实根"即可。
阅读全文