求一元二次方程ax2+bx+c=0的解。
(考虑b2-4ac三种情况)
提示:如输入abc的值分别为1 2 1,输出x1=x2=-1.00;输入1 5 6,输出x1=-2.00,x2=-3.00;输入3 4 5 ,输出“无实数解!”。
输入格式:
输入三个整数。
输出格式:
输出方程解的情况。
输入样例:
在这里给出一组输入。例如:
1 5 6
输出样例:
在这里给出相应的输出。例如:
x1=-2.00,x2=-3.00
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
#include<stdio.h>
#include<math.h>
int main()
{
float a, b, c, x1, x2;
scanf("%f %f %f", &a, &b, &c);
if (b*b - 4 * a*c < 0)
{
printf("无实数解!");
}
else if(b*b-4*a*c>0)
{
x1 = (-b + sqrt(b * b - 4 * a*c)) / (2 * a);
x2 = (-b - sqrt(b * b - 4 * a*c)) / (2 * a);
printf("x1=%.2f,x2=%.2f", x1, x2);
}
else
{
x1 = (-b + sqrt(b * b - 4 * a*c)) / (2 * a);
printf("x1=x2=%.2f", x1);
}
return 0;
}