用do while來編寫一元二次方程

 

/**************************
2011年9月6日20:21:39
目的:用do while來編寫一元二次方程

人機交互方便
*********************************/

#include<stdio.h>
#include<math.h>
int main(void)
{
 double a,b,c;
 double delta;
 double x1,x2;
 char ch;

 
 do
 {
  printf("請輸入一元二次方程的三個係數:\n");
  printf("a=");
  scanf("%lf",&a);
  
  printf("b=");
  scanf("%lf",&b);

    printf("c=");
  scanf("%lf",&c);

  delta=b*b-4*a*c;

  if(delta>0)
  {
   x1=(-b+sqrt(delta))/(2*a);
   x2=(-b-sqrt(delta))/(2*a);
   printf("該方程有兩個解x1=%lf,x2=%lf\n",x1,x2);
  }
  else if(delta==0)
  { x1=x2=-b/(2*a);
   printf("該方程有一個解x1=x2=%d\n",x1);
  } 
  
  else
   printf("該方程無實數解!");

  
     printf("您是否還要繼續?Y/N\n");
  scanf(" %c",&ch);//%c前面必須加一個空格。?????
  

 } while(ch=='y'||ch=='Y');
 
 
 return 0;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章