#define _CRT_SECURE_NO_WARNINGS 1
#define EXP 0.000000001 //不同环境下精度不同
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
double a = 0.0;
double b = 0.0;
double c = 0.0;
double disc = b*b - 4 * a * c;
scanf("%lf%lf%lf",&a,&b,&c);
if (a>=-EXP && a<=EXP)
{
printf("不是一元二次方程\n"); //当a=0时考虑精度
}
if(disc>0.0)
{
double x1=((-b)+sqrt(disc))/(2*a),
double x2 = ((-b)-sqrt(disc))/(2*a);
printf("x1=%lf\n x2=%lf\n",x1,x2);
else if(disc>= -EXP && disc<=EXP)
{
printf("x=(-b)/(2*a)",x)
}
else
printf("有两个共轭复根\n");
}
system("pause\n");
return 0;
}
1744

被折叠的 条评论
为什么被折叠?



