我如何修复"在>之前预期的初级表达?令牌"在if-else声明中?

时间:2014-10-02 06:08:58

标签: c++

我试图制作这个if-else语句,确保数字在0到100之间,然后再用它做任何事情。

if (test1 < 0 || > 100) // I get the error here.
    {
        cout << "This score is good." << endl;
    }
    else
    {
        cout << endl << "ERROR: " << test1 << " is not a valid test score.";

        return 1;
    }

3 个答案:

答案 0 :(得分:1)

将其更改为

if (test1 > 0 && test1 < 100) (1-99 are = true)

- &GT;它需要一个布尔结果。

答案 1 :(得分:0)

Bah,我不得不两次写test1。也让操作员弄错了。

if (test1 >= 0 && test1 <= 100) // I get the error here.
    {
        cout << "This score is good." << endl;
    }
    else
    {
        cout << endl << "ERROR: " << test1 << " is not a valid test score.";

        return 1;
    }

答案 2 :(得分:0)

有两个缺点。导致编译器错误的第一个是条件

if (test1 < 0 || > 100) // I get the error here.

语法错误地编写。应该有

if ( test1 < 0 || test  > 100)

第二个缺点是,如果测试具有无符号整数类型会更好。在这种情况下,您可以简化条件

if ( test > 100)
{
    cout << "This score is good." << endl;
}
else
{
    cout << endl << "ERROR: " << test1 << " is not a valid test score.";

    return 1;
}

你还确定你不是指以下内容吗?

if ( test <= 100)
{
    cout << "This score is good." << endl;
}
else
{
    cout << endl << "ERROR: " << test1 << " is not a valid test score.";

    return 1;
}