求方程 ax2+bx+c=0ax2+bx+c=0的根,用3个函数分别求当: b2−4acb2−4ac大于0、等于0和小于0时的根并输出结果。从主函数输入a,b,c的值

求方程 ax2+bx+c=0ax2+bx+c=0的根,用3个函数分别求当: b2−4acb2−4ac大于0、等于0和小于0时的根并输出结果。从主函数输入a,b,c的值
代码:
求方程 ax2+bx+c=0ax2+bx+c=0的根,用3个函数分别求当: b2−4acb2−4ac大于0、等于0和小于0时的根并输出结果。从主函数输入a,b,c的值
#include <stdio.h>
#include <math.h>
float x1,x2;
int main(){
float calculate1(int a,int b,int c);
float calculate2(int a,int b,int c);
float calculate3(int a,int b,int c);
float a,b,c,result;
printf(“请输入a的值\n”);
scanf("%f",&a);
printf(“请输入b的值\n”);
scanf("%f",&b);
printf(“请输入c的值\n”);
scanf("%f",&c);
result=sqrt(bb-4ac);
if(result==0)
calculate1(a,b,c);
else if(result>0)
calculate2(a,b,c);
else calculate3(a,b,c);
return 0;
}
float calculate1(int a,int b,int c){
x1=x2=(-b)/(2
a);
printf(“方程%dxx+%dx+%d=0的根为:\n",a,b,c);
printf(“x1=%f,x2=%f\n”,x1,x2);
}
float calculate2(int a,int b,int c){
x1=(-b+sqrt(b
b-4ac))/(2a);
x2=(-b-sqrt(b
b-4ac))/(2a);
printf("方程%dx
x+%dx+%d=0的根为:\n”,a,b,c);
printf(“x1=%f,x2=%f\n”,x1,x2);
}
float calculate3(int a,int b,int c){
float m,n;
m=-b/(2a);
n=sqrt(-(b
b-4ac))/(2a);
printf("方程%dx
x+%dx+%d=0的根为:\n",a,b,c);
printf(“x1=%f+%fi,x2=%f-%fi\n”,m,n,m,n);
}
运行结果:
求方程 ax2+bx+c=0ax2+bx+c=0的根,用3个函数分别求当: b2−4acb2−4ac大于0、等于0和小于0时的根并输出结果。从主函数输入a,b,c的值
求方程 ax2+bx+c=0ax2+bx+c=0的根,用3个函数分别求当: b2−4acb2−4ac大于0、等于0和小于0时的根并输出结果。从主函数输入a,b,c的值
求方程 ax2+bx+c=0ax2+bx+c=0的根,用3个函数分别求当: b2−4acb2−4ac大于0、等于0和小于0时的根并输出结果。从主函数输入a,b,c的值

上一篇:Linux(ubuntu)下创建用户没有创建家目录


下一篇:双时滞四维捕食网络的分析【基于matlab的动力学模型学习笔记_5】