zzuli OJ 1015: 二次方程的实根

Description

编程计算并输出一元二次方程ax^2+bx+c=0的两个实根,其中a、b、c的值由用户从键盘输入,假设a、b、c的值能保证方程有两个不相等的实根(即b^2-4ac>0)。

Input

输入三个实数,以空格隔开。

Output

按从大到小的顺序输出两个实根,每个数据占7列、小数点后保留两位小数,不足7列右对齐

Sample Input

2 6 1

Sample Output

-0.18 -2.82

HINT

注意%m.nf的作用

Source           

#include
#include //math.h中相关数学函数的声明

int main(void)
{
	double a, b, c;    //定义double类型变量
	double x1, x2;   // 定义double类型变量x1,x2存储方程的两个实根
	double s;

	scanf("%lf%lf%lf", &a, &b, &c); //读入系数
	s = sqrt(b * b - 4 * a * c);  // 为书写表达式方便,首先计算sqrt(b * b - 4 * a * c)存入变量s
	x1 = (-b + s) / (2 * a);  //按求根公式计算x1
	x2 = (-b - s) / (2 * a);  //按求根公式计算x2
	printf("%7.2f%7.2f\n", x1, x2 ); //注意输出顺序,另外每个数值7列,不要多空格
	return 0;
}


你可能感兴趣的:(ZZULI_OJ,初级ACM题集)