c++中利用vector创建并输入二维数组时不能利用传统的输入方法cin>>要利用到vector创建一维数组并将其插入二维数组内。代码如下:
#include<iostream>
#include<vector>
using namespace std;
void main()
{
int r = 0, c = 0;
cout << "Enter r: ";//规定二维数组行数
cin >> r;
cout << "Enter c: ";//规定二维数组列数
cin >> c;
vector<vector<int>>array;//定义二维数组
vector<int>v;//定义一维数组
array.clear();//将二维数组清空,或初始化(初始化代码很简单,不会可以百度)//也可不用这一步
int temp=0;
for (int i = 0; i < r; i++)//输入r*c的二维数组
{
v.clear();//子数组返回时要清除
for (int j = 0; j < c; j++)
{
cin >> temp;
v.push_back(temp);
}
array.push_back(v);
}
for (int i = 0; i < r; i++)//打印输入的二维数组
{
for (int j = 0; j < c; j++)
{
cout << array[i][j] << " ";
}
printf("\n");
}
while (1);
}