//利用C 语言求一元二次方程解
#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) //a不是零的情况下才可判断一元二次方程
{
d=sqrt(b*b-4*a*c); //判断¥的情况
x1=(-b+d)/(2*a);
x2=(-b-d)/(2*a);
if(x1<x2)
printf("%f %f\n",x2,x1);
else
printf("%f %f\n",x1,x2);
}
return 0;
}
- 一元二次方程有无实数根。
#include<stdio.h>
#include<math.h>
int main()
{
double disc,a,b,c,p,q,x1,x2;
printf("请输入a和b和c的值:\n");
scanf("%lf %lf %lf",&a,&b,&c);
disc=b*b-4*a*c;
if(disc<0)
printf("改方程无实数根\n");
else
{
p=(-b)/(2*a);
q=sqrt(disc)/(2*a);
x1=p+q;
x2=p-q;
printf("x1=%7.2f\nx2=%7.2f\n",x1,x2);
}
return 0;
}