题目
编写判断直角三角形函数,在主函数从键盘输入三个数,调用该函数,在主函数中输出是否是直角三角形
分析思路
- 首先我们要判断出这三条边能否构成三角形,“ 两边之和大于第三边,两边之差小于第三边 ”。使用 i f 语句判断是否为三角形,若是三角形则继续判断是否为直角三角形;若不是三角形直接结束。
- 判断直角三角形我们用到勾股定理,a^2 + b^2 = c^2 。使用 i f 语句判断是否为直角三角形,若是则记为1,若不是则记为2
我们要注意的是在判断那里条件要充分,是任意三条边而不是有一组就行。
代码
#include <stdio.h>
int func(int a, int b, int c)
{
int flag = 0;
if (a + b > c && a + c > b && b + c > a)
{
if (a* a + b * b == c * c || a * a + c * c == b * b || b * b + c * c == a * a)
flag = 1;
else
flag = 2;
}
return flag;
}
void main()
{
int a, b, c, n;
printf("请输入三角形三边长度:");
scanf("%d %d %d", &a, &b, &c);
n = func(a, b, c);
if (n == 1)
printf("\n该三角形是直角三角形");
else if (n == 2)
printf("\n该三角形不是直角三角形");
else
printf("\n无法构成三角形");
}
希望这篇文章对大家有用,如有错误请指出,我会改正哒。