解一元二次方程ax2+bx+c=0的解。 输入 多组测试,每行输入三个实数a,b,c的值,a 不为0. 输出 输出两个根X1和X2,用空格隔开,具体格式为: X1 X2 其中大的根先输出,即X1>=X2。 结果保留两位小数。 如果没有实根,输出“NO” 样例输入(所给的几个样例虽然都是整数,但没有其他所有说输入一定都是整数) 1 5 -2 1 1 2 1 -2 1 样例输出 0.37 -5.37 NO 1.00 1.00 提示 该题有多组测试数据 #include <stdio.h> #include <string.h> #include <math.h> #include <stdlib.h> #include <ctype.h> //主函数main int main() { float a, b, c; while (scanf("%f %f %f", &a, &b, &c) != EOF) { float delta = b * b - 4 * a * c; float x1, x2; if (delta >= 0) { x1 = (-b + sqrt(delta)) / (2 * a); x2 = (-b - sqrt(delta)) / (2 * a); printf("%.2f %.2fn", x1, x2); } else { printf("NOn");//NO不是No } } return 0; }
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455