求方程 的根,用三个函数分别求当b^2-4ac大于0、等于0、和小于0时的根,并输出结果。从主函数输入a、b、c的值
#include<stdio.h>
#include<math.h> //该程序调用sqrt()开平方根函数,所以必须添加该头文件
void solve1(double a,double b,double c)
{
printf("x1=%.3f ",-b/(2a));
printf(“x2=%.3f”,-b/(2a));
}
void solve2(double a,double b,double c)
{
printf("x1=%.3f+%.3fi ",-b/(2a),sqrt(4ac-bb)/(2a)); //由于d<0,所以该方程有两个复数解
printf(“x2=%.3f-%.3fi”,-b/(2a),sqrt(4ac-bb)/(2a));
}
void solve3(double a,double b,double c)
{
printf(“x1=%.3f “,(-b+sqrt(bb-4ac)/(2a)));
printf(“x2=%.3f”,(-b-sqrt(bb-4ac)/(2a)));
}
int main()
{
double a,b,c,d;
scanf(”%lf%lf%lf”,&a,&b,&c); //注意scanf里面的,由于a,b,c都是double类型
d=bb-4a*c;
if(d==0) //求解一元二次方程的结果有3个解,所以自定义3个函数
solve1(a,b,c);
if(d<0)
solve2(a,b,c);
if(d>0)
solve3(a,b,c);
return 0;
}