c++二维数组!急!!!

来源:百度知道 编辑:UC知道 时间:2024/06/20 16:21:02
在主函数中定义一个5*5的二维整型数组a[5][5],和两个指针变量p1,p2,由函数返回数组中最大值的地址。
编写两个函数,主函数的调用语句分别是:
p1 = f1(a,5,5);p2 = f2(*a,25).

#include <iostream>

using namespace std;
int* fun(int arr[][5], int a, int b)
{
int iMax = arr[0][0];
int *p;
for (int i=0; i<a; ++i)
{
for (int j=0; j<b; ++j)
{
if (iMax<arr[i][j])
{
iMax = arr[i][j];
p=&arr[i][j];
}
}
}
return p;
}
int* fun(int *p,int len)
{
int iMax =p[0];
int *pi;
for (int i=0;i<len;++i)
{
if (iMax<p[i])
{
iMax=p[i];
pi=&p[i];
}
}
return pi;
}
int main()
{
int arr[5][5] = {1,2,3,4,6,7,9,0,4,1,6,89,34,12,34,56,76,89,32,23,21,45,65,76,54};
int *p=fun(arr,5,5);
cout <<*p <<endl;
p=fun(*arr,25);
cout << *p <<endl;
return 0;
}