2017-07-19 63 views
0

我的代碼應該從用戶終止'|'並使用while循環打印出一個矢量。向量在c + +打印重複輸入

#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

請幫

+0

有沒有人只是問這個Python的確切問題? – Carcigenicate

回答

1

你需要把你的for循環,而循環外。現在,對於每個輸入值,它將打印出整個矢量。只有當您完成爲您的程序輸入數字時纔會打印。

while(cin>>number) 
{ 
    numbers.push_back(number); 
} 
for(int i=0;i<numbers.size();i++) 
{ 
    cout<<numbers[i]<<" "; 
} 
return 0;