我的代码应该接受以“|”结尾的用户的输入并使用 while 循环打印出一个 vector 。
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> numbers;
int number;
cout<<"Enter some numbers: ";
while(cin>>number)
{
numbers.push_back(number);
for(int i=0;i<numbers.size();i++)
{
cout<<numbers[i]<<" ";
}
}
return 0;
}
但是,假设我输入值:1 2 3 4 |
输出为:1 1 2 1 2 3 1 2 3 4
请帮忙
最佳答案
您需要将 for 循环放在 while 循环之外。现在对于每个输入值,它将打印出整个 vector 。仅当您完成为程序输入数字时才会打印。
while(cin>>number)
{
numbers.push_back(number);
}
for(int i=0;i<numbers.size();i++)
{
cout<<numbers[i]<<" ";
}
return 0;
关于c++ - C++中的 vector 重复打印输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45201996/