int main(){//一元二次方程求解
double a,b,c;
double x1,x2,s,p,q;
printf("请输入ax^2+bx+c=0的a,b,c\n");
printf("a=");
scanf("%lf",&a);
printf("b=");
scanf("%lf",&b);
printf("c=");
scanf("%lf",&c);
if(a==0)
{
printf("您输入的不是二次方程,请重新输入");
}
else{
if(pow(b,2)-4*a*c==0)
{
s=sqrt(b*b-4*a*c);
x1=(-b+s)/(2*a);
x2=(-b-s)/(2*a);
printf("两根值相等为:x1=x2=%lf\n",x1,x2);
}
else if(pow(b,2)-4*a*c>0)
{
s=sqrt(b*b-4*a*c);
x1=(-b+s)/(2*a);
x2=(-b-s)/(2*a);
printf("两根值分别为x1=%lf,x2=%lf\n",x1,x2);
}
else{
p=-b/(2*a);
q=(sqrt(b*b-4*a*c))/(2*a);
printf("输出两个共轭复根!\n");
printf("%lf+%lfi\n",p,q);
printf("%lf-%lfi\n",p,q);
}
}
return 0;
}
大家有什么建议意见,欢迎留言评论,你们的关注可是我前进的动力啊啊啊啊啊啊!!!