创建一个int类型的二维数组,在代码中提前定义好内容,使用指针读取数组的地址,再用指针遍历的方式读取全部的元素,并让第一行的数据分别和第二行对应列的数据相乘,获得新的数字传给一个新的一维数组并显示
时间: 2024-10-29 08:19:24 浏览: 31
创建一个 int 类型的二维数组并在代码中预设好内容,可以按照以下步骤进行:
```cpp
#include <iostream>
int main() {
const int rows = 2;
const int cols = 5; // 假设是5x5的矩阵
// 创建并初始化二维数组
int arr[rows][cols] = {
{1, 2, 3, 4, 5},
{6, 7, 8, 9, 10}
};
// 定义指向二维数组的指针
int** ptr = &arr;
// 新的一维数组用于存储结果
int result[cols];
// 遍历二维数组并计算对应元素的乘积
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
result[j] = arr[i][j] * arr[(i + 1) % rows][j]; // 使用模运算保证跨行操作
}
}
// 输出新数组的内容
std::cout << "Result array:\n";
for (int i = 0; i < cols; ++i) {
std::cout << result[i] << " ";
}
std::cout << "\n";
return 0;
}
```
在这个例子中,我们首先定义了一个2行5列的二维数组 `arr`,然后通过指针 `ptr` 访问它的元素。我们将第一行的元素与第二行对应列的元素相乘,并将结果存入 `result` 数组。最后打印出结果数组。
阅读全文