用c语言
时间: 2024-02-22 13:56:34 浏览: 56
可以使用以下代码来解决一元二次方程:
```c
#include <stdio.h>
#include <math.h>
int main() {
float a, b, c, x1, x2, discriminant, realPart, imaginaryPart;
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("方程的两个实数解为:%.2f 和 %.2f", x1, x2);
} else if (discriminant == 0) {
x1 = x2 = -b / (2 * a);
printf("方程的唯一实数解为:%.2f", x1);
} else {
realPart = -b / (2 * a);
imaginaryPart = sqrt(-discriminant) / (2 * a);
printf("方程的两个虚数解为:%.2f+%.2fi 和 %.2f-%.2fi", realPart, imaginaryPart, realPart, imaginaryPart);
}
return 0;
}
```
在这个程序中,我们使用了`scanf`函数来获取用户输入的系数a、b、c的值,并使用`if-else`语句来判断判别式的值,从而确定方程的解的类型。最后使用`printf`函数输出结果。
阅读全文