问题描述
- C++的cin怎么输入一个矩阵?
- 例如输入:
1 2 3
4 5 6
怎么用cin输入,最好能保存为vector>类型的二维向量。
解决方案
#include <iostream>#include <sstream>#include <vector>#include <string>using namespace std;void input_vector (vector<vector<int>>&);int main (){ vector<vector<int>> vec; input_vector (vec); vector<vector<int>>::iterator it = vec.begin (); for (; it != vec.end (); ++it) { vector<int>::iterator i = it->begin (); while (i != it->end ()) { cout << *i++ << "" ""; } cout << endl; } return 0;}void input_vector (vector<vector<int> >& vec){ vector<int> v; while (!cin.eof()) { int tmp(0); v.clear (); string line; getline(cin line); istringstream ss(line); while (ss>>tmp) { v.push_back (tmp); } vec.push_back (v); }}
解决方案二:
按行输入,然后一行数据,自己在用空格等分割截取各个元素
解决方案三:
输入Ctrl-z表示输入结束
解决方案四:
感谢各位大神,我就不一一回复了
时间: 2024-11-05 04:50:54