任务描述
题目描述:按如下函数原型编程从键盘输入一个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
开始你的任务吧,祝你成功!
编程要求
根据提示,在右侧编辑器Begin-End处补充代码。
测试说明
平台会对您的代码进行运行测试,如果实际输出与预期输出相同,则算通关。
代码示例
/* 第3关:计算数组中元素的最大值及其所在的行列下标值 */
#include<stdio.h>
#define N 1000
int a[N][N];
int main(void)
{
/*********Begin*********/
int m, n, i, j;
/* 读入数据 */
printf("Input m, n:");
scanf("%d,%d", &m, &n);
printf("Input %d*%d array:\n", m, n);
for(i = 0; i < m; i++)
for(j = 0; j < n; j++)
scanf("%d", &a[i][j]);
int maxa = a[0][0], row = 0, col = 0;
for(i = 0; i < m; i++)
for(j = 0; j < n; j++)
if(a[i][j] > maxa) maxa = a[i][j], row = i, col = j;
printf("max=%d, row=%d, col=%d\n", maxa, row + 1, col + 1);
/*********End**********/
return 0;
}