#include<stdio.h>
#include<math.h>
int main()
{
float a,b,c,disc,x1,x2,realpart,imagpart;
scanf("%f%f%f",&a,&b,&c);
printf("%0.2fx^2+%0.2fx+%0.2f=0\n",a,b,c);
printf("The equation ");
if(a==0) //a=0
{
printf("is not a quadratic\n.");
}
else
{
disc=b*b-4*a*c;
if(disc==0) //△=0
printf("has two equal real roots:%0.2f\n",-b/(2*a));
else
if(disc>0) //△>0
{
x1=(-b+sqrt(disc))/(2*a);
x2=(-b-sqrt(disc))/(2*a);
printf("has two distinct real roots:%0.2f and %0.2f\n",x1,x2);
}
else //△<0
{
realpart=-b/(2*a);
imagpart=sqrt(-disc)/(2*a);
printf("has two distinct complex roots:\n");
printf("%0.2f+%0.2fi\n",realpart,imagpart);
printf("%0.2f-%0.2fi\n",realpart,imagpart);
}
}
return 0;
}
求一元二次方程的解 (c语言)
最新推荐文章于 2022-03-16 11:25:57 发布