求教一道二维数组的最大值和最小值(数组位置有要求)

/*4.编程打印一个二维数组中所有元素的和,并打印最大值,最小值(以及它们所在的行号和列号)
void printResult(int a[][]){......}
输出结果格式:
二维数组中所有元素的和是:123
最大值是:15,行号:3,列号:1//{有角标}[长度]
最小值是:1,行号:2,列号:4//[3][3]

#include<stdio.h>
#define N 3
#define M 4
void printResult( int a[N][M]) { int i,j,s,mi,mj,ni,nj;
  s=0; mi=mj=ni=nj=0;
  for ( i=0;i<N;i++ )
    for ( j=0;j<M;j++ ) {
      s+=a[i][j];
      if ( a[i][j]>a[mi][mj] ) { mi=i;mj=j; }
      else if ( a[i][j]<a[ni][nj] ) { ni=i;nj=j; }
    }
  printf("二维数组中所有元素的和是:%d\n",s);
  pritnf("最大值是:%d,行号:%d,列号:%d\n",a[mi][mj],mi+1,mj+1);
  pritnf("最小值是:%d,行号:%d,列号:%d\n",a[ni][nj],ni+1,nj+1);
}
void main() { int i,j,a[N][M];
  for ( i=0;i<N;i++ ) for ( j=0;j<M;j++ ) scanf("%d",&a[i][j]);
  printResult(a);
}

温馨提示:答案为网友推荐,仅供参考
相似回答