int main()
{
float a, b, c;
scanf("%d%d%d", &a, &b, &c);
if (a + b > c&&a + c > b&&b + c > a)
{
if (pow(a, 2) + pow(b, 2) = pow(c, 2) || pow(a, 2) + pow(c, 2) = pow(b, 2) || pow(c, 2) + pow(b, 2) = pow(a, 2))
printf("yes");
}
else printf("not a triangle");
return 0;
}
以上代码是错的,你知道错在哪里吗?
pow()必须是可修改的左值,也就是说pow不能在等式右边出现。
那我该如何完成这道题呢?
int main()
{
int a, b, c;
scanf("%d%d%d", &a, &b, &c);
if (a + b > c&&a + c > b&&b + c > a)
{
if (a*a + b*b == c*c || a*a + c*c == b*b || c*c + b*b == a*a)
printf("yes");
else printf("no");
}
else printf("not a triangle");
return 0;
}
o(∩_∩)o