C語言:求二元一次方程

xi4ojie發表於2011-04-04
Code:
  1. #include <stdio.h>  
  2.   
  3. #include <math.h>  
  4. void main()  
  5. {  
  6.     float a,b,c,disc,x1,x2;  
  7.     printf("請輸入a,b,c,格式如:1,2,3:/n");  
  8.     scanf("%f,%f,%f",&a,&b,&c);  
  9.       
  10.   
  11.     if(fabs(a)<1e-6){  
  12.         printf("這個方程的兩個根式是:%f,%f/n",-b/(2*a),-b/(2*a));  
  13.     }else{  
  14.         disc = b*b-4*a*c;  
  15.         if(fabs(disc)<=1e-6){  
  16.             x1 = (-b+sqrt(disc))/(2*a);  
  17.             x2 = (-b-sqrt(disc))/(2*a);  
  18.   
  19.             printf("這個方程有兩個根是:%f,%f/n",x1,x2);  
  20.         }else{  
  21.             x1 = -b/(2*a);        
  22.             x2 = sqrt(-disc)/(2*a);  
  23.             printf("方程有虛根:%f,%f/n",x1,x2);  
  24.   
  25.   
  26.         }  
  27.     }  
  28. }  

程式碼不是很完善,在求虛根的時候不知道怎麼做的。所以就不好了!

相關文章