编写一个函数,输入一个整型二维数组,输出其中最大值所在的行号和列号,以及最大值

要求用指针进行值的传递
2025-02-28 03:09:09
推荐回答(2个)
回答1:

#include
#include
void maxp(int** ia,int r,int c,int* x,int* y,int* max)
{
*max=ia[0][0];
int i,j;
for(i=0;i {
for(j=0;j {
if(*max {
*max=ia[i][j];
*x=i;
*y=j;
}
}
}
}

int main()
{
int r,c,i,j;
int max,x,y;
printf("输入矩阵行数和列数 空格分开:");
scanf("%d%d",&r,&c);
int** m=(int**)malloc(sizeof(int*)*r);
for(i=0;i {
m[i]=(int*)malloc(sizeof(int)*c);
}
printf("输入数据:");
for(i=0;i {
for(j=0;j {
scanf("%d",&m[i][j]);
}
}
maxp(m,r,c,&x,&y,&max);
printf("最大值是m[%d][%d]:%d\n",x,y,max);
for(i=0;i {
free(m[i]);
}
free(m);
return 0;
}

回答2:

void fun3(int a[][N],int m,int &row,int &col) //m表示行,n表示列 { int i,j,temp; temp = a[0][0]; for(i = 0;i < m;i++