c++使用行指针方法输出二维数组最大元素所在行列的代码
时间: 2023-12-03 10:44:52 浏览: 77
编程技术C++数组指针与字符串
假设二维数组为 `arr`,行数为 `row`,列数为 `col`,以下是使用行指针方法输出二维数组最大元素所在行列的代码:
```c++
#include <iostream>
using namespace std;
int main() {
int arr[3][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}}; // 3行4列的二维数组
int row = 3, col = 4;
int max = arr[0][0];
int *max_row = &arr[0][0]; // 最大元素所在行的指针
int *max_col = &arr[0][0]; // 最大元素所在列的指针
// 遍历二维数组每个元素,找到最大值
for (int i = 0; i < row; i++) {
for (int j = 0; j < col; j++) {
int *p = *(arr + i) + j; // 指向当前元素的指针
if (*p > max) {
max = *p;
max_row = *(arr + i);
max_col = p;
}
}
}
// 输出最大元素所在行列
int max_row_index = max_row - arr[0];
int max_col_index = max_col - *max_row;
cout << "最大元素为:" << max << endl;
cout << "最大元素所在行:" << max_row_index << endl;
cout << "最大元素所在列:" << max_col_index << endl;
return 0;
}
```
输出结果为:
```
最大元素为:12
最大元素所在行:2
最大元素所在列:3
```
阅读全文