题目描述
输入三个正整数,判断用这三个整数做边长是否能构成一个直角三角形。
输入
输入三个正整数。
输出
能否构成直角三角形。如能输出:yes.若不能,输出:no。
样例输入
6 8 10
样例输出
yes
1.简单思路
#include<stdio.h>
int main()
{
int a, b, c;//定义三边长abc
scanf("%d %d %d", &a, &b, &c);//键盘输入三边abc
if ((b * b == c * c + a * a) || (a * a == b * b + c * c) || (c * c == b * b + a * a))//如果满足勾股定理
printf("yes");
else//否则
printf("no");
return 0;//程序正常退出
}
2.复杂思路
#include<stdio.h>
int main()
{
int a[3];
for (int i = 0; i < 3; i++)
{
scanf("%d", &a[i]);//以后无论怎样,都要先用循环输入元素
}
int max = a[0];
for (int i = 0; i < 3; i++)
{
if (a[i] > max)
{
max = a[i];
int c = a[0];
a[0] = max;
a[i] = c;//注意交换元素的思路,一定要先储存一个值
}
}
int b = a[0] * a[0];
if (b == a[1] * a[1] + a[2] * a[2])
printf("yes");
else
printf("no");
return 0;
}
注意:
1.以后无论怎样,都要先用循环输入元素
2.注意交换元素的思路,一定要先储存一个值