首页 > 解决方案 > 检查数字是否在特定范围内

问题描述

我正在做一个数字游戏。

如果您输入 1-5 的数字(1、2、3、4 和 5)

它将显示一个文本。

我试着做这样的事情:

if (numbers == 1 || 2 || 3 || 4 || 5)
{
    std::cout << "TEXT";
}

(没有工作)

但是有没有更好的方法来输入一系列整数?

标签: c++visual-c++

解决方案


您发布的代码,相当于:

if ((numbers == 1) || (2) || (3) || (4) || (5))
{
    std::cout << "TEXT";
}

它不会起作用,因为表达式2,3和始终不为 0 45它们将始终为true,并且该if语句将仅确定是否numbers为 1。

我想你想这样写:

if (numbers == 1 || numbers == 2 || numbers == 3 || numbers == 4 || numbers == 5)
{
    std::cout << "TEXT";
}

然后是一种更简单、更清洁的方法:

if (numbers >= 1 && numbers <= 5)
{
    std::cout << "TEXT";
}

推荐阅读