求方程式ax2+bx+c=0有两个不等实根的c语言程序。

2023-04-27

问题描述:

求方程式ax2+bx+c=0有两个不等实根的c语言程序




最佳答案:

#include

#include

#include 

void main()

{

double a, b, c;

double val;

double root1, root2;

printf("输入参数(空格分隔): ");

scanf("%lf %lf %lf", &a, &b, &c);

val = b*b-4*a*c;

if(val < 0)

{

printf("无解");

return;

}

if(val == 0) // 由于精度问题,一般小于一个值就认为是零, 写成abs(val) < eps

{

root1 = -b /(2*a);

printf("相同解 %f", root1);

}

else

{

val = sqrt(val);

root1 = (-b + val)/(2*a);

root2 = (-b - val)/(2*a);

printf("解 %f , %f", root1, root2);

}

}