三角形的面积计算

 1 #include "stdafx.h"
 2 #include <math.h>
 3 
 4 
 5 //根据输入的三条边判断是不是正确的三角形
 6 bool IsTri(double x,double y,double z)
 7 {
 8     if (! ( (x+y>z) && (abs(x-y)<z) ) )
 9     {
10         return false;
11     }
12     if (! ( (x+z>y) && (abs(x-z)<y) ) )
13     {
14         return false;
15     }
16     if (! ( (z+y>x) && (abs(z-y)<x) ) )
17     {
18         return false;
19     }
20     return true;
21 }
22 
23 int main(int argc, char* argv[])
24 {
25     
26     double a,b,c;
27     double s,area;
28     printf("请输入三角形三条边的变长\n");
29     scanf("%lf%lf%lf",&a,&b,&c);
30     
31     if (IsTri(a,b,c))
32     {
33         s=(a+b+c)/2.0;
34         area=sqrt(s*(s-a)*(s-b)*(s-c));    
35         printf("三角形的面积为 %f \n",area);
36     }
37     else
38     {
39         printf("你输入的边不满足三角形的条件\n");
40     }
41     return 0;
42 }

先判断用户输入的是不是一个三角形,然后再计算结果。

posted @ 2012-05-07 21:58  r3call  阅读(330)  评论(0编辑  收藏  举报