第 24 題 - 解答


#include <stdio.h>
#include <math.h>
int main()
{
   double a, b, c, perimeter, s, area; 
   printf("請輸入三個數值:"); 
   scanf("%lf%lf%lf",&a,&b,&c); 
   if((a>0 && b>0 && c>0) && (a+b>c && a+c>b && b+c>a))
   {   
      perimeter=a+b+c;
      s=(a+b+c)/2;
      area=sqrt(s*(s-a)*(s-b)*(s-c));
      printf("三角形的周長=%f\n",perimeter); 
      printf("三角形的面積=%f\n",area);
   }
   else
      printf("此三個數值無法構成三角形的三邊\n");
   return 0;
}

考試版本
#include <stdio.h>
#include <math.h>
int main()
{
   double a, b, c, perimeter, s, area; 
   scanf("%lf%lf%lf",&a,&b,&c); 
   if((a>0 && b>0 && c>0) && (a+b>c && a+c>b && b+c>a))
   {   
      perimeter=a+b+c;
      s=(a+b+c)/2;
      area=sqrt(s*(s-a)*(s-b)*(s-c));
      printf("%f\n",perimeter); 
      printf("%f\n",area);
   }
   else
      printf("0\n");
   return 0;
}