我的程序应该基本上根据用户输入的边的长度来确定三角形的类型。
我收到我的代码的错误消息,该代码进行测试以查看是否为斜角三角形
预期为';'在“ {”之前 else((right!= left)||(right!= bottom)||(left!= bottom))
代码:
else((right != left) || (right != bottom) || (left != bottom)){
printf("This is a scalene triangle");
}
错误是说放一个;就在最后一个条件之后,这对我来说没有意义。我试图这样做来测试它,但是它给了我错误的答案。
答案 0 :(得分:5)
我假设这应该是if...else
,在这种情况下,您需要在if
之后添加一个额外的else
...
else if ((right != left) || (right != bottom) || (left != bottom))
{
printf("This is a scalene triangle");
}
响应OP的评论...
从笔记中我读到的格式是else的最后一个语句(如果只是其他形式),因此为什么我不使用else if而只是使用else
从某种意义上讲,注释是正确的-最后一条语句可以为else
语句(如果您有else
,则必须为最后一条语句只能有一个)。
因此以下内容是有效的...
if (a == 1) {
// Do this
} else {
// Do that
}
但是以下内容无效有效...
if (a == 1) {
// Do this
} else {
// Do that
} else {
// Do other
}
else if
允许您继续对多个块进行逻辑处理...如果需要,可以以else
块结束...
if (a == 1) {
// Do this
} else if (b == 1) {
// Do that
} else {
// Do other
}
还是不...
if (a == 1) {
// Do this
} else if (b == 1) {
// Do that
} else if (c == 1) {
// Do other
}
答案 1 :(得分:1)
else
不能有条件语句,如果需要包括条件检查,则应该为else if
。
必须进行如下更改
else if ((right != left) || (right != bottom) || (left != bottom)){
printf("This is a scalene triangle");
}