vector怎么创建二维数组
时间: 2023-10-22 08:35:31 浏览: 151
对于创建二维数组,你可以使用 vector<vector<int>> 来实现。例如,创建一个 3 行 4 列的二维数组可以这样写:
vector<vector<int>> arr(3, vector<int>(4));
这样就创建了一个为 3 x 4 的二维数组,每个元素的初值都为 0。你也可以在创建时给定初始值。
希望这可以解决你的问题。
相关问题
c++ vector创建二维数组
回答: 在C++中,可以使用vector来创建二维数组。下面是几种不同的方法:
方法一:使用vector嵌套vector的方式创建二维数组。可以先定义一个vector,然后在内层vector中定义大小。例如:
```
#include <iostream>
#include <vector>
using namespace std;
int main() {
int m = 2; // 行数
int n = 3; // 列数
vector<vector<int>> vec(m); // 创建m行的vector
for (int i = 0; i < m; i++) {
vec[i].resize(n); // 给内层vector定义大小
}
// 赋值
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
vec[i][j] = j + 1;
}
}
// 输出
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
cout << vec[i][j] << " ";
}
cout << endl;
}
return 0;
}
```
方法二:使用resize函数来创建二维数组。可以先定义一个vector,然后使用resize函数来指定行数和列数。例如:
```
#include <iostream>
#include <vector>
using namespace std;
int main() {
int m = 2; // 行数
int n = 3; // 列数
vector<vector<int>> vec;
vec.resize(m, vector<int>(n)); // 创建m行n列的二维vector
// 赋值
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
vec[i][j] = j + 1;
}
}
// 输出
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
cout << vec[i][j] << " ";
}
cout << endl;
}
return 0;
}
```
这些方法都可以创建一个二维数组,并进行赋值和输出。希望对你有帮助![2]
使用vector创建二维数组
可以使用vector<vector<int>>来创建二维数组,代码如下:
```c++
#include <vector>
using namespace std;
int main() {
int rows = 5, cols = 4;
vector<vector<int>> arr(rows, vector<int>(cols));
// 对数组进行赋值
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
arr[i][j] = i * cols + j + 1;
}
}
// 输出数组
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
cout << arr[i][j] << " ";
}
cout << endl;
}
return 0;
}
```
上面的代码中,第一行创建了一个大小为5x4的二维数组arr。vector<vector<int>>表示一个元素类型为int的二维向量,(rows, vector<int>(cols))表示创建一个rows行cols列的二维向量,并且向量中的所有元素都被初始化为0。
接下来,我们使用两个for循环对数组进行赋值,最后再使用两个for循环输出数组中的所有元素。
阅读全文