C语言实验——一元二次方程Ⅰ
题目描述解一元二次方程ax2+bx+c=0的解。输入a,b,c的值。输出两个根X1和X2,其中X1>=X2。结果保留两位小数。示例输入15-2示例输出0.37-5.37...
题目描述
解一元二次方程ax2+bx+c=0的解。
输入
a,b,c的值。
输出
两个根X1和X2,其中X1>=X2。 结果保留两位小数。
示例输入
1 5 -2
示例输出
0.37 -5.37 展开
解一元二次方程ax2+bx+c=0的解。
输入
a,b,c的值。
输出
两个根X1和X2,其中X1>=X2。 结果保留两位小数。
示例输入
1 5 -2
示例输出
0.37 -5.37 展开
2个回答
展开全部
#include<stdio.h>
#include<math.h>
int main()
{
double a,b,c;
scanf("%lf %lf %lf",&a,&b,&c);
if(a==0)
{
printf("不是一元二次方程!\n");
return 1;
}
else
{
if(b*b-4*a*c<0)
{
printf("方程有两个虚数解,x1=%.2lf+%.2lfi,x2=%.2lf+%.2lfi\n",-b/(2*a),sqrt(4*a*c-b*b)/(2*a),-b/(2*a),sqrt(4*a*c-b*b)/(2*a));
}
else if(b*b-4*a*c==0)
{
printf("方程有两个相同的解,x1=x2=%.2lf\n",(-b/(2*a)));
}
else
{
printf("方程有两个不同的解,x1=%.2lf,x2=%.2lf\n",(-b+sqrt(b*b-4*a*c))/(2*a),(-b-sqrt(b*b-4*a*c))/(2*a));
}
}
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询