3101 - 【创新型】第9章: 指针 9.17 谁是最大的(2)
时间限制 : 1 秒
内存限制 : 128 MB
找出一个2×3的矩阵中的最大值及其行下标和列下标,要求调用子函数FindMax(int p[][3], int m, int n, int pRow, int pCol)实现,最大值以函数的返回值得到,行下标和列下标在形参中以指针的形式返回。
题目输入
两行数据,每行三个整数中间用空格
题目输出
输出最大的数,行下标,列下标
例如:
Max=5,Row=0,Col=1
输入/输出样例
输入格式
1 2 3 4 5 6
输出格式
Max=6,Row=1,Col=2
C语言解答
#include <stdio.h> int FindMax(int p[][3], int m, int n, int *pRow, int *pCol); int main() { int a[2][3],i,j,row,col,max; for(i=0;i<2;i++) for(j=0;j<3;j++) scanf("%d",&a[i][j]); max=FindMax(a,2,3,&row,&col); printf("Max=%d,Row=%d,Col=%d",max,row,col); } int FindMax(int p[][3], int m, int n, int *pRow, int *pCol) { int *max,i,j; max=p[0]; *pRow=0; *pCol=0; for(i=0;i<m;i++) for(j=0;j<n;j++) { if(*max<p[i][j]) { *max=p[i][j]; *pRow=i; *pCol=j; } } return (*max); }