我写的代码:
#include <stdio.h>
int main() {
double a, b, c;
scanf("%f", &a, &b, &c);
double x1, x2, m;
m = a * a + b * b - c * c;
if (m = 0) {
printf("x1=x2=-%.6f");
}
else if (m > 0) {
printf("x1=-%.6f\nx2=-%.6f\n");
}
else if (m < 0) {
printf("This equation has no real root!");
}break;
return 0;
}
任务描述
编程输出一元二次方程ax
2
+bx+c=0 的根。已知系数a,b,c(实数)的值,要求按不同情况输出方程的两个不同的实根、两个相同的实根和方程没有实根的情形。
输入格式:
三个系数a,b,c的值。
输出格式:
参考输出样例,特别是两个实根时的输出顺序。
无实根时输出:This equation has no real root!
具体格式见样例。
输入样例:
1.0 5.0 4.0
输出样例:
x1=-1.000000
x2=-4.000000
输入样例:
1 2 1
输出样例:
x1=x2=-1.000000
输入样例:
2 9 4
输出样例:
x1=-0.500000
x2=-4.000000
输入样例:
1 1 9
输出样例:
This equation has no real root!