C语言编程,求方程根,求大神帮帮忙

2025-05-16 19:13:14
推荐回答(2个)
回答1:

我借鉴别人的,你看看
http://zhidao.baidu.com/link?url=VSIKWYSM6RWH38VL7stkB__GUhlZiAk4jHxiZmgKHbgeQLnCegros1-pcvp8q3XtRuWu6JcVMgmBOo7USeX4ca

#include "stdio.h"
#include "math.h"

/*求一元二次方程ax*x+bx+c=0的解*/
main()
{
float a,b,c,x1,x2,d;
printf("请输入a:");
scanf("%f",&a);
printf("请输入b:");
scanf("%f",&b);
printf("请输入c:");
scanf("%f",&c);
d=b*b-4*a*c;

if(d < 0)
printf("方程没有实数解。\n");

if (d==0)
{
x1=(-b)/(2*a);
printf("x1=%f\n",x1);
}
if (d>0)
{
x1=(-b+sqrt(d))/(2*a);
x2=(-b-sqrt(d))/(2*a);
printf("x1=%f,x2=%f\n",x1,x2);}
}

回答2:

x1=[-b-√(b²-4ac)]/2a,x2=[-b+√(b²-4ac)]/2a

需要包含头文件math.h 其中x1和x2为输出
void (int a, int b,int c,double *x1,double* x2)
{
x1 = (0-b-sqrt(b*b - 4*a*c))/(2*a);
x2 = (0-b+sqrt(b*b - 4*a*c))/(2*a);
}