要求:按如下函数原型编程从键盘输入一个m
行n
列的二维数组,然后计算数组中元素的最大值及其所在的行列下标值。其中m
和n
的值由用户键盘输入。已知m
和n
的值都不超过10。
---------------------------------------------------------------------------------------------------------------------------------
代码:
#include<stdio.h>
int main()
{
int m, n;
printf("Input m, n:");
scanf("%d,%d", &m, &n);
int arr[100][100];
printf("Input %d*%d array:\n", m, n);
int i, j;
for (i = 0; i < m; i++)
{
for (j = 0; j < n; j++)
{
scanf("%d", &arr[i][j]);
}
}
int max = arr[0][0];
int row = 0, col = 0;
for (i = 0; i < m; i++)
{
for (j = 0; j < n; j++)
{
if (arr[i][j] > max)
{
max = arr[i][j];
row = i;
col = j;
}
}
}
printf("max=%d, row=%d, col=%d", max, row + 1, col + 1);//数组以0开始,输出实际行列需+1
return 0;
}