【C语言】求方程ax^2+bx+c=0的根, a,b,c由键盘输入。

 

 1 #include<stdio.h>
 2 #include<math.h>
 3 int main ()
 4 {
 5     double a,b,c,d,p;
 6     printf("请输入a,b,c 的值:"); 
 7     scanf("%lf%lf%lf",&a,&b,&c);
 8     if(a==0)
 9     printf("不是二次方程");
10     else
11     {
12         d=b*b-4*a*c; 
13     
14         if(d==0)
15         {
16             printf("有两个相等的根\nx=%7.2lf\n",-b/(2*a));
17         }
18         if (d>0)
19             { 
20                 printf("有两个不相等的根\nX1=%7.2lf\nX2=%7.2lf\n",(-b+sqrt(d))/(2*a),(-b-sqrt(d))/(2*a));
21             } 
22             if(d<0) 
23                 {
24                     p=sqrt(-d/(2*a)); 
25                     printf("有两个共轭复根\nX1=%7.2lfi-%7.2lf\nX2=%7.2lfi-%7.2lf\n",p,b/2,-p,b/2);
26                 }
27     }        return 0;
28 }

 



 

 

 

 

 


 

代码成功写出来了,但是共轭复根真的是第一次见,公式只能参考度娘了,有错误请留言!

 

posted @ 2017-03-16 00:12  ieblYang  阅读(31681)  评论(0编辑  收藏  举报