用C语言编写,求算术平方根ax²+bx+c+0的根。分别考虑有两个不等的实根,有两个相等的实根。
展开全部
#include "stdio.h"
#include "math.h"
void main()
{
double a,b,c,d,x1,x2,realpart,imagpart;
printf("请输入a,b,c的值:\n");
scanf("%lf,%lf,%lf",&a,&b,&c);
printf("方程的根:\n");
if(a==0)
{
printf("这不是一个一元二次方程。\n");
return;
}
else
d=b*b-4*a*c;
if(fabs(d)<=1e-6)/*
fabs是求实数绝对值的函数,由于d是一个实数,计算机在计算和存储时可能存在误差,所以当d是一个很小的数时,就认为他是0 */
printf("方程有两个相同的根:%8.4f\n",-b/(2*a));
else if(fabs(d)>1e-6)
{
x1=(-b+sqrt(d))/(2*a);
x2=(-b-sqrt(d))/(2*a);
printf("方程有两个不相同的实根:%8.4f和%8.4f\n",x1,x2);
}
else
{
realpart=-b/(2*a);
imagpart=sqrt(-d)/(2*a);
printf("方程有两个复根:\n");
printf("%8.4f+%8.4fi\n",realpart,fabs(imagpart));
printf("%8.4f-%8.4fi\n",realpart,fabs(imagpart));
}
}
#include "math.h"
void main()
{
double a,b,c,d,x1,x2,realpart,imagpart;
printf("请输入a,b,c的值:\n");
scanf("%lf,%lf,%lf",&a,&b,&c);
printf("方程的根:\n");
if(a==0)
{
printf("这不是一个一元二次方程。\n");
return;
}
else
d=b*b-4*a*c;
if(fabs(d)<=1e-6)/*
fabs是求实数绝对值的函数,由于d是一个实数,计算机在计算和存储时可能存在误差,所以当d是一个很小的数时,就认为他是0 */
printf("方程有两个相同的根:%8.4f\n",-b/(2*a));
else if(fabs(d)>1e-6)
{
x1=(-b+sqrt(d))/(2*a);
x2=(-b-sqrt(d))/(2*a);
printf("方程有两个不相同的实根:%8.4f和%8.4f\n",x1,x2);
}
else
{
realpart=-b/(2*a);
imagpart=sqrt(-d)/(2*a);
printf("方程有两个复根:\n");
printf("%8.4f+%8.4fi\n",realpart,fabs(imagpart));
printf("%8.4f-%8.4fi\n",realpart,fabs(imagpart));
}
}
展开全部
#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);}
}
#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);}
}
追问
有点看不明白你的..
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询