标题:二次方程的实数根
题目描述
编程计算并输出一元二次方程ax2+bx+c=0的两个实根,其中a、b、c的值由用户从键盘输入,假设a、b、c的值能保证方程有两个不相等的实根(即b2-4ac>0)。
输入
输入三个实数,以空格隔开。
输出
按从大到小的顺序输出两个实根,每个数据占7列、小数点后保留两位小数,不足7列右对齐
样例输入
2 6 1
样例输出
-0.18 -2.82
代码如下
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
double a,b,c,x1,x2,s;
scanf("%lf %lf %lf",&a,&b,&c);
s=sqrt(b*b-4*a*c);
x1=(-b+s)/(2*a);
x2=(-b-s)/(2*a);
printf("%7.2f%7.2f",x1,x2);
return 0;
}