时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:6794
解决:3361
题目描述:
给定三角形的三条边,a,b,c。判断该三角形类型。
输入:
测试数据有多组,每组输入三角形的三条边。
输出:
对于每组输入,输出直角三角形、锐角三角形、或是钝角三角形。
样例输入:
3 4 5
样例输出:
直角三角形
来源:
2009年哈尔滨工业大学计算机研究生机试真题
思路:
利用勾股定理来求,事先要对3条边进行排序。
代码:
#include <stdio.h>
void swap(int *x, int *y)
{
int tmp;
tmp = *x;
*x = *y;
*y = tmp;
}
int main(void)
{
int a, b, c;
while (scanf("%d%d%d", &a, &b, &c) != EOF)
{
if (a > b)
swap(&a, &b);
if (b > c)
swap(&b, &c);
int result = a*a + b*b -c*c;
if (result > 0)
printf("锐角三角形\n");
else if(result == 0)
printf("直角三角形\n");
else
printf("钝角三角形\n");
}
return 0;
}
/**************************************************************
Problem: 1048
User: liangrx06
Language: C
Result: Accepted
Time:0 ms
Memory:912 kb
****************************************************************/