如何将用户输入连续存储到向量中
处理用户输入时,通常希望将其存储在向量中进一步加工。但是,在以下代码片段中,仅捕获第一个用户提供的数字:
<code class="cpp">int main() { int input; vector<int> V; cout << "Enter your numbers to be evaluated: " << endl; cin >> input; V.push_back(input); }</code>
为了解决此问题,代码需要不断读取用户输入,直到满足特定条件(例如,用户键入特定字符或到达输入流末尾)。
解决方案 1:使用 While 循环与 cin
以下代码使用 while 循环连续读取用户的整数并将其推入向量中:
<code class="cpp">while (cin >> input) { V.push_back(input); }</code>
解决方案 2:使用带有 cin 的哨兵值
另一种方法是使用表示输入结束的哨兵值。在此示例中,我们将使用 9999:
<code class="cpp">while ((cin >> input) && input != 9999) { V.push_back(input); }</code>
此循环将继续读取输入,直到用户键入 9999 或任何其他导致 cin 无效的值。
通过实施这些解决方案,您可以有效地将所有用户提供的数字存储在向量中以供进一步处理。
以上是以下是一些标题选项,适合基于问题并反映文章的内容: 选项 1(关注问题): * 为什么我的向量只存储第一个用户输入? 选项 2(焦点的详细内容。更多信息请关注PHP中文网其他相关文章!