求方程式ax^2+bx+c=0的根。

#include <stdio.h>
#include <stdlib.h>
#include<math.h>
int main()
{
  int a,b,c,d;
  double p,q,x1,x2;
  printf("please input a,b,c:\n");
  scanf("%d%d%d",&a,&b,&c);
  d=b*b-4*a*c;
  if(d>=0)
  {
    if(d==0)
    {
      x1=x2=-b/(2*a);
      printf("x1=x2=%f\n",x1);
    }
    else{
      x1=(-b+sqrt(d))/(2*a);
      x2=(-b-sqrt(d))/(2*a);
      printf("x1=%f\nx2=%f\n",x1,x2);
    }
  }
  else{
    p=-b/(2*a);
    q=sqrt(-d)/(2*a);
    printf("x1=%f+%fi\nx2=%f-%fi",p,q);
  }
return 0;
}

posted @ 2016-06-30 09:29  胡卫雄  阅读(976)  评论(0编辑  收藏  举报