C语言如何计算求解一元二次方程ax+bx+c=0的根

 我来答
小黑哎啊
科技发烧友

2020-05-04 · 智能家居/数码/手机/智能家电产品都懂点
知道大有可为答主
回答量:1642
采纳率:74%
帮助的人:344万
展开全部

#include<stdio.h>

#include<math.h> 


int fun1(double a,double b,double d)

   { double x1,x2;

       x1=(b+sqrt(d))/(-1*2*a);

       x2=(b-sqrt(d))/(-1*2*a);

       printf("x1=%.2lf x2%.2lf",x1,x2);

   }

int fun2(double a,double b,double d)

   {double x1,x2;

       x1=x2=(b+sqrt(d))/(-2*a);

       printf("x1=%.2lf x2=%.2lf",x1,x2);

   }

int fun3(double a,double b,double d)

   {double x1,x2,y1,y2;

       x1=(-b)/(2*a);

       y1=sqrt(-d)/(2*a);

       x2=(-b)/(2*a);

       y2=sqrt(-d)/(2*a);

       printf("x1=%.3lf+%.3lfi x2=%.3lf-%.3lfi",x1,y1,x2,y2);

   }

int main()

{

    double a,b,c,d;

    double x1,x2;

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

    d=b*b-4*a*c;//b*b-4*a*c有3中情况,因此定义3个函数来计算3种情况; 

    if(d>0)

       fun1(a,b,d);

    if(d==0)

       fun2(a,b,d);

    if(d<0)//这种情况结果为复数; 

       fun3(a,b,d);

    return 0;

 } 

喜羊羊651
2020-05-04 · TA获得超过314个赞
知道小有建树答主
回答量:1186
采纳率:76%
帮助的人:110万
展开全部
通过一元二次方程的求根公式,注意要先判断有几个根
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式