理解向量中的用户输入存储
在 C 中,向量是一个动态数组,可以有效地存储元素的集合。当涉及到将用户输入存储在向量中时,该过程涉及使用 std::cin 流从控制台读取输入并使用 std::vector::push_back() 方法将其推送到向量中。
代码结构
考虑以下代码片段:
<code class="cpp">#include <iostream> #include <vector> using namespace std; template <typename T> void write_vector(const vector<T>& V) { cout << "The numbers in the vector are : "; for (int i=0; i < V.size(); i++) cout << V[i] << " "; } int main() { int input; vector<int> V; cout << "Enter your numbers to be evaluated: "; cin >> input; V.push_back(input); write_vector(V); return 0; }</code>
问题解释
在此代码中,仅从控制台读取一个数字并将其存储在向量中。然后 write_vector() 函数打印向量,仅显示第一个输入的数字。
解决方案
要解决此问题,可以引入一个循环来连续读取输入从 cin 开始,直到用户输入非数字值、EOF 字符或指定的哨兵值。
<code class="cpp">int main() { int input; vector<int> V; cout << "Enter your numbers to be evaluated (Enter any non-numeric character to stop): "; while (cin >> input) V.push_back(input); return 0; }</code>
通过使用循环,代码将读取多个输入并将它们存储在向量中,从而使write_vector() 函数打印所有输入的数字。
以上是如何在 C 中将多个用户输入存储在向量中?的详细内容。更多信息请关注PHP中文网其他相关文章!