求一元二次方程:ax2+bx+c=0 的根。
输入三个实数a,b,c的值,且a不等于0。
数学基础:一元二次方程

只含有一个未知数(一元),并且未知数项的最高次数是2(二次)的整式方程叫做一元二次方程。标准形式为:ax²+bx+c=0(a≠0)。

求解公式:求根公式法

用求根公式法解一元二次方程的一般步骤为:

①把方程化成一般形式

【C 语言】一元二次方程_#include

,确定a,b,c的值(注意符号);

②求出判别式

【C 语言】一元二次方程_其他_02

的值,判断根的情况;

③在

【C 语言】一元二次方程_#include_03

(注:此处△读“德尔塔”)的前提下,把a、b、c的值代入公式

【C 语言】一元二次方程_其他_04

进行计算,求出方程的根。

实例
#include <stdio.h>
#include <math.h>
 
int main()
{
        float a,b,c,x1,x2,d;
        printf("输入方程的三个系数:");
        scanf("%f %f %f",&a,&b,&c);
        if(a!=0)
        {
                d=sqrt(b*b-4*a*c);
                x1=(-b+d)/(2*a);
                x2=(-b-d)/(2*a);
                if(x1<x2) 
                    printf("%0.2f %0.2f\n",x2,x1); 
                else
                    printf("%0.2f %0.2f\n",x1,x2);
        }
        return 0;
}

 

运行结果:
输入方程的三个系数:1 2 1
-1.00 -1.00