这是一段判断是否为直角三角形的代码,这里的if条件用法错误,但不知道错误在哪,希望能找到错误,谢谢各位

图片说明
#include
int main()
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
if((a<(b+c))&&(b<(a+c))&&(c<(a+b)))
{
if((a*a==b*b+c*c)||(b*b==a*a+c*c)||(c*c==a*a+b*b))
{
printf("可以构成直角三角形");
}
else{ printf("不可以构成直角三角形");
}
}
else{printf("不可以构成直角三角形");}
return 0;
}

2个回答

要写双等号==,单等号是赋值

CPrimer0
Boom ? 回复JonathanYan: 谢谢谢谢,我刚刚也看到了,我的两个分号是中文输入,谢谢了,真的十分感谢
4 个月之前 回复
JonathanYan
JonathanYan 回复Boom ?: 你的分号是全角(中文)的,要用半角(英文)的
4 个月之前 回复
CPrimer0
Boom ? 这是运行图片,麻烦您看一下
4 个月之前 回复
JonathanYan
JonathanYan 回复Boom ?: 看起来没问题了,出啥问题了
4 个月之前 回复
CPrimer0
Boom ? 好的,谢谢了,但经过修改还是出现问题,if的用法是否正确呢?十分感谢
4 个月之前 回复

应该是分号要用英文输入法,像第5行一样,不要用中文的(颜色就不对也过不了编译)

qq_45572675
qq_45572675 然后判断的话,应该是小于等于,还有每条边应该大于0
4 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问