新手求助
怎样做到输入多少个值就输出多少个值 但是输入的时候用空格隔开 回车结束输入
#include <iostream> #include <vector> using namespace std; int main(void) { vector<float> num; float input=0.0; while (cin >> input) { num.push_back(input); } vector<float>::size_type index=0; for ( ; index!=num.size(); index++) { cout<<num[index]<<" "; } return 0; }
#include <iostream> #include <iterator> #include <algorithm> #include <vector> using namespace std; int main(void) { std::vector<int> buf; for( ; ; ) { int c; for( ; c=std::cin.rdbuf()->sgetc(), c==' '||c=='\t'; std::cin.rdbuf()->snextc() ); if( c=='\n' ) // 既然你说了标志是“回车结束输入”,那就判断回车呗 break; int val; if( !(cin>>val) ) break; buf.push_back( val ); } std::copy( buf.begin(), buf.end(), std::ostream_iterator<int>(cout," ") ); cout << endl; return 0; }