编程求一个m*n的二维数组中所有元素最大值以及所在的行号和列号,元素可从键盘输入,也可用数组定义
时间: 2024-03-19 10:45:29 浏览: 94
好的,可以使用二重循环遍历二维数组,同时记录最大值以及所在的行号和列号。代码如下:
```
#include <stdio.h>
int main() {
int m, n, max, row, col;
printf("请输入二维数组的行数和列数:\n");
scanf("%d %d", &m, &n);
int arr[m][n];
printf("请输入二维数组的元素:\n");
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
scanf("%d", &arr[i][j]);
}
}
// 初始化最大值为第一个元素,行号和列号为0
max = arr[0][0];
row = 0;
col = 0;
// 遍历二维数组,更新最大值以及所在的行号和列号
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
if (arr[i][j] > max) {
max = arr[i][j];
row = i;
col = j;
}
}
}
// 输出最大值以及所在的行号和列号
printf("最大值为:%d,所在的行号为:%d,所在的列号为:%d\n", max, row, col);
return 0;
}
```
您可以根据需要将代码中的键盘输入部分改为数组定义方式。
阅读全文