首页 > 解决方案 > 如何将值分配给像数组一样增加的变量但不使用数组

问题描述

所以我variable正在variable制作一个可以char comparevariable. 我想分配给. 如果用户输入 'y' 十次,变量可能会增加十次。它就像一个数组,但我不能在我的项目中使用数组,我想比较这个数字。我想要十个变量之间的最高和最低数字。12new inputnew inputvariable 2char compare

我试图存储该值,但之后我不知道该怎么做。

char compare = 'Y';
int value = 1; // Value is a variable that increases
while (compare == 'y' || compare == 'Y') {
    cout << " enter value#" << value;
    cin >> num;
    cout << "do you want to compare?";
    cin >> compare;
    value++;
}

我希望num会坚持value然后比较它,但似乎我做不到。

例如,用户输入 100 for numand value1,然后用户想继续输入 300 for numand value2。

标签: c++

解决方案


似乎您想要一个像可变大小实体一样的数组。在这种情况下,使用 std:vector 并在其中填充“num”。

编辑:前面没有提到不使用数组。在这种情况下,您可以执行以下操作:

char compare = 'Y';
int value = 1; // Value is a variable that increases
int num;
bool assigned = false;
int minNum = 0, maxNum = 0;
while (compare == 'y' || compare == 'Y') {
    cout << " enter value#" << value;
    cin >> num;
    if (!assigned || (num < minNum)) {
        minNum = num;
    }
    if (!assigned || (num > maxNum)) {
        maxNum = num;
    }
    if (!assigned)
        assigned = true;
    cout << "do you want to compare?";
    cin >> compare;
    value++;
}

推荐阅读