求方程ax2+bx+c=0的根,用3个函数分别求当b2-4ac大于0,等于0,和小于0时的根并输出结果.从主函数a,b,c输用c语言编程,
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/15 22:47:17
求方程ax2+bx+c=0的根,用3个函数分别求当b2-4ac大于0,等于0,和小于0时的根并输出结果.从主函数a,b,c输用c语言编程,
求方程ax2+bx+c=0的根,用3个函数分别求当b2-4ac大于0,等于0,和小于0时的根并输出结果.从主函数a,b,c输
用c语言编程,
求方程ax2+bx+c=0的根,用3个函数分别求当b2-4ac大于0,等于0,和小于0时的根并输出结果.从主函数a,b,c输用c语言编程,
#include
#include
// b^2-4ac == 0
void fun1(double &a,double &b,double &c,double &d){
double ans = -b/(2*a);
printf("b^2-4ac == 0 , x1 = x2 = %lf.\n",ans);
}
// b^2-4ac > 0
void fun2(double &a,double &b,double &c,double &d){
double ans1,ans2;
ans1 = (-b+sqrt(d)) / (2*a);
ans2 = (-b-sqrt(d)) / (2*a);
printf("b^2-4ac > 0 , x1 = %lf , x2 = %lf.\n",ans1,ans2);
}
// b^2-4ac < 0
void fun3(double &a,double &b,double &c,double &d){
double real,imar;
real = -b/(2*a);
imar = sqrt(-d) / (2*a);
printf("b^2-4ac < 0 , x1 = %lf+%lfi , x2 = %lf-%lfi.\n",real,imar,real,imar);
}
int main(){
double a,b,c,d;
printf("please input a,b,c.\n");
while(scanf("%lf%lf%lf",&a,&b,&c)!=EOF){
d = b*b-4*a*c;
if(d==0) fun1(a,b,c,d);
else if(d>0) fun2(a,b,c,d);
else fun3(a,b,c,d);
printf("please input a,b,c.\n");
}
}
我没学过啊,
啊啊啊啊啊啊啊