任务描述
题目描述:按如下函数原型编程从键盘输入一个m行n列的二维数组,然后计算数组中元素的最大值及其所在的行列下标值。其中m和n的值由用户键盘输入。已知m和n的值都不超过10。
相关知识(略)
输入
输入数组大小:"%d,%d" 下面输入数组中元素。
输出
输出格式: 数组大小输入提示信息:"Input m, n:" 数组元素输入提示信息:"Input %d*%d array: " 输出格式:"max=%d, row=%d, col=%d"
样例输入
5,5 1 2 3 4 5
4 5 6 100 2
3 2 1 5 6
1 2 3 5 4
3 5 6 4 8
样例输出
Input m, n:Input 5*5 array: max=100, row=2, col=4
#include<stdio.h>
int main(void)
{
/*********Begin*********/
int m,n,j,i,max,row,col;
printf("Input m, n:");
scanf("%d,%d",&m,&n);
int a[m][n];
printf("Input %d*%d array:\n",m,n);
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
scanf("%d",&a[i][j]);
}
max=a[0][0];
row=1;
col=1;
for (i=0;i<m;i++)
for (j=0;j<n;j++)
if (max< a[i][j])
{
max=a[i][j];
row=i+1;
col=j+1;
}
printf("max=%d, row=%d, col=%d",max,row,col);
/*********End**********/
return 0;
}
本文介绍了一种通过编程实现从用户输入的m行n列二维数组中查找最大值及其位置的方法。具体步骤包括读取数组大小,接收数组元素,遍历数组比较每个元素,最终输出最大值及所在行列下标。





