您的位置:首页 > 编程语言 > C语言/C++

根据三边长度判断三角形的形状 c语言

2010-11-17 19:48 316 查看
// 测试用例:

// 直角三角形:3 4 5

// 钝角三角形:3 5 7

// 锐角三角形:6 6 6

#include <stdio.h>

#include <stdlib.h>

// test if the three number is a triangle

int isTriangle(int a, int b, int c)

{

if ((a > 0) && (b > 0) && (c > 0)

&& (a < b + c) && (b < a + c) && (c < a + b))

return 1;

else

return 0;

}

// output the triangle

void judge(int max, int a, int b)

{

if (max * max == (a * a + b * b))

{

printf("直角三角形/n");

}

else

{

// 根据余弦定理来判定

if (a * a + b * b - max * max > 0)

{

printf("锐角三角形/n");

}

else if (a * a + b * b - max * max < 0)

{

printf("钝角三角形/n");

}

}

}

int main()

{

int a, b, c;

printf("Enter three number to test if the three numbers can be made a triangle/n");

scanf("%d" , &a);

scanf("%d", &b);

scanf("%d", &c);

if(isTriangle(a, b, c))

{

// a >= b and c

if ( (a >= b) && (a >= c) )

{

judge(a, b, c);

}

// b >= a and c

else if ( (b >= a) && (b >= c) )

{

judge(b, a, c);

}

// c >= a and b

else if( (c >= a) && (c >= b) )

{

judge(c, a, b);

}

}

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: