二次方程的实数根

标题:二次方程的实数根

题目描述

编程计算并输出一元二次方程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;
}

版权声明:本文为weixin_51690450原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。