C++创建二维数组
时间: 2025-05-16 21:03:45 浏览: 12
### C++ 中创建二维数组的方法
在 C++ 编程语言中,可以通过静态分配或动态分配的方式创建二维数组。以下是两种主要方法的具体实现:
#### 静态分配方式
通过定义固定大小的二维数组来存储数据。这是最简单和常见的方法之一。
```cpp
#include <iostream>
using namespace std;
int main() {
// 定义一个 3 行 4 列的二维数组并初始化
int array[3][4] = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
};
// 打印数组中的每一个元素
for (int i = 0; i < 3; ++i) {
for (int j = 0; j < 4; ++j) {
cout << "array[" << i << "][" << j << "] = " << array[i][j] << endl;
}
}
return 0;
}
```
上述代码展示了如何声明一个具有初始值的二维数组,并遍历打印其内容[^1]。
#### 动态分配方式
当无法提前知道数组的确切尺寸或者需要更灵活的空间管理时,可以使用 `new` 运算符动态分配内存空间。
```cpp
#include <iostream>
using namespace std;
int main() {
int rows = 3, cols = 4;
// 使用 new[] 动态分配二维数组
int** dynamicArray = new int*[rows];
for (int i = 0; i < rows; ++i) {
dynamicArray[i] = new int[cols]{};
}
// 初始化数组
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
dynamicArray[i][j] = i * cols + j + 1;
}
}
// 打印数组内容
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
cout << "dynamicArray[" << i << "][" << j << "] = " << dynamicArray[i][j] << endl;
}
}
// 清理动态分配的内存
for (int i = 0; i < rows; ++i) {
delete[] dynamicArray[i];
}
delete[] dynamicArray;
return 0;
}
```
此示例演示了如何利用指针以及 `new` 和 `delete` 来处理动态二维数组的情况[^2]。
#### 处理实际应用中的二维数组
下面是一个具体的例子,展示如何计算多个学生的成绩总分。
```cpp
#include <iostream>
#include <string>
using namespace std;
int main() {
const int students = 5, subjects = 3;
string studentNames[students] = {"Alice", "Bob", "Charlie", "David", "Eve"};
int grades[students][subjects] = {{85, 90, 78}, {92, 88, 95}, {76, 85, 89}, {88, 92, 90}, {95, 87, 93}};
for (int i = 0; i < students; ++i) {
int totalScore = 0;
for (int j = 0; j < subjects; ++j) {
totalScore += grades[i][j];
}
cout << studentNames[i] << "'s total score is: " << totalScore << endl;
}
return 0;
}
```
这段程序模拟了一个班级里五个同学三科考试分数统计的过程[^3]。
阅读全文
相关推荐


















