错误:应为“;”表达式和表达式结果未使用后
Errors: expected ';' after expression and expression result unused
为什么我会收到 "expected ';' after expression
和 expressions result unused
的错误?这是我的代码:
#include <cs50.h>
#include <stdio.h>
int main(void)
{
printf("How tall do you want your pyramid to be?\n");
int height = GetInt();
if (height > 23 && height < 1)
{
printf("Please use a positive number no greater than 23:\n");
}
else (height > 0 && height <= 23)
{
printf("Thanks!\n");
}
}
您收到此错误是因为您无法使用 else
进行条件检查。您可能想使用 else if
但是,您会注意到的一件事是这两个条件都是全局详尽的,因此您不需要 else if
检查条件。只需要 else
而不进行任何条件检查即可完成这项工作。
另外,根据您给出的条件检查,它永远不会为真。因为,height
不能同时大于 23
和小于 1
。您需要的是 or ||
检查而不是 and &&
因此,您的代码将变为
#include <cs50.h>
#include <stdio.h>
int main(void)
{
printf("How tall do you want your pyramid to be?\n");
int height = GetInt();
if (height > 23 || height < 1)
{
printf("Please use a positive number no greater than 23:\n");
}
else
{
printf("Thanks!\n");
}
}
没有
else (height > 0 && height <= 23)
else 表示其他一切,所以不能给else 条件。
使用 else if 代替 ^^
为什么我会收到 "expected ';' after expression
和 expressions result unused
的错误?这是我的代码:
#include <cs50.h>
#include <stdio.h>
int main(void)
{
printf("How tall do you want your pyramid to be?\n");
int height = GetInt();
if (height > 23 && height < 1)
{
printf("Please use a positive number no greater than 23:\n");
}
else (height > 0 && height <= 23)
{
printf("Thanks!\n");
}
}
您收到此错误是因为您无法使用 else
进行条件检查。您可能想使用 else if
但是,您会注意到的一件事是这两个条件都是全局详尽的,因此您不需要 else if
检查条件。只需要 else
而不进行任何条件检查即可完成这项工作。
另外,根据您给出的条件检查,它永远不会为真。因为,height
不能同时大于 23
和小于 1
。您需要的是 or ||
检查而不是 and &&
因此,您的代码将变为
#include <cs50.h>
#include <stdio.h>
int main(void)
{
printf("How tall do you want your pyramid to be?\n");
int height = GetInt();
if (height > 23 || height < 1)
{
printf("Please use a positive number no greater than 23:\n");
}
else
{
printf("Thanks!\n");
}
}
没有
else (height > 0 && height <= 23)
else 表示其他一切,所以不能给else 条件。 使用 else if 代替 ^^