用c语言实现求方程ax^2+bx+c=0的根,用三个函数gz,ez和sz分别求当b^2-4ac大于0、等于0和小于0时的根,并输出结果。从主函数输入a、b、c的值。(输出保留3位小数)
时间: 2023-11-29 15:00:37 浏览: 156
好的,这个问题是关于编程的,我可以回答。下面是代码:
```
#include <stdio.h>
#include <math.h>
void gz(float a, float b, float c)
{
float x1, x2;
x1 = (-b + sqrt(b * b - 4 * a * c)) / (2 * a);
x2 = (-b - sqrt(b * b - 4 * a * c)) / (2 * a);
printf("x1=%.3f, x2=%.3f\n", x1, x2);
}
void ez(float a, float b, float c)
{
float x;
x = -b / (2 * a);
printf("x=%.3f\n", x);
}
void sz()
{
printf("该方程无实数根\n");
}
int main()
{
float a, b, c;
printf("请输入方程ax^2 + bx + c = 0中的a、b、c的值(用空格隔开):\n");
scanf("%f %f %f", &a, &b, &c);
float delta = b * b - 4 * a * c;
if (delta > 0)
{
gz(a, b, c);
}
else if (delta == 0)
{
ez(a, b, c);
}
else
{
sz();
}
return 0;
}
```
希望这个代码可以帮助您解决问题。现在您有什么其他问题吗?
阅读全文