【问题描述】
现有如下的二维数组,请找出其中最大的数。
要求:
1、不在子函数中输出。
2、使用指定子函数,不得修改。
int GetMax(int *p,int m,int n)
【输入形式】
主函数中循环输入2行3列元素:
【输出形式】
输出最大值
【样例输入】
1 2 9
4 9 8
【样例输出】max=9
【样例说明】
注意:主函数中函数调用要考虑传实参是行地址。
#include<stdio.h>
int GetMax(int (*p)[3],int m,int n)
{
int i,j,max=0;
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
if(p[i][j]>max)
max=p[i][j];
}
}
return max;
}
int main(){
int a[2][3];
int i,j,max;
int (*p)[3]=&a[0];
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
{
scanf("%d",&a[i][j]);
}
}
max=GetMax(&a[0],2,3);
printf("max=%d",max);
return 0;
}