31.求解一元二次方程 ax2+bx+c=0 的跟(a 不等于 0),a,b,c 均为实数,其值由键盘输入。
#include<math.h>
#include<stdio.h>
#include<conio.h>
main() {
double a,b,c;
double s,x1,x2;
printf("please enter a,b,c:\n");
scanf("%lf%lf%lf",&a,&b,&c);
if(a>=-(1e-6)&&a<=(1e-6))
printf("sorry!you have a wrong numbera.\n");
else {
s=b*b-4*a*c;
if(s>(1e-6)) {
x1=(-b+sqrt(s))/(2*a);
x2=(-b-sqrt(s))/(2*a);
printf("there are two different
real:\nx1=%5.2f,x2=%5.2f\n",x1,x2);} else if(s>=-(1e-6)&&s<=(1e-6)) {
x1=x2=-b/(2*a);
printf("there are two equal
real:\nx1=x2=%5.2f\n",x1);
} else {
s=-s;
x1=-b/(2*a);
x2=fabs(sqrt(s)/(2*a));
printf("there are two different complex:\n");
printf("x1=%5.2f+%5.2fi,x2=%5.2f-%5.2fi\n",x1,x2,x1,x2);
}
}
getch();
}
求解一元二次方程 ax2+bx+c=0 的跟(a 不等于 0),a,b,c 均为实数,其值由键盘输入。
最新推荐文章于 2024-04-27 22:09:26 发布