c语言编程输入一个m*n的整数矩阵,输出其最大值最小值及其下标

输入一个mn的整数矩阵,输出其最大值最小值及其下标
输入一个m
n的整数矩阵,输出其最大值最小值及其下标输入一个m*n的整数矩阵,输出其最大值最小值及其下标

int main()
{
      int a[100][100];
      int n,m,max,maxi,maxj,min,mini,minj,i,j;
      scanf("%d%d",&n,&m);
      for(i=0;i<n;i++)
        for(j=0;j<m;j++)
            scanf("%d",&a[i][j]);
      maxi = maxj = mini = minj = 0;
      max = min = a[0][0];
      for(i=0;i<n;i++)
          for(j=0;j<m;j++)
          {
              if(a[i][j] > max)
              {
                    max  = a[i][j];
                    maxi = i;
                    maxj = j;
              }
               if(a[i][j] < min)
              {
                    min  = a[i][j];
                    mini = i;
                    minj = j;
              }
          }
    printf("最大值为a[%d,%d]=%d\n",maxi,maxj,max);
    printf("最小值为a[%d,%d]=%d\n",mini,minj,min);
    return 0;
}

如果事先已经知道矩阵的m和n,可以简单的通过两个计数器来实现
维护min,min_loc,max,max_loc,count,每读入一个数字,count+1,并和min,max分别比较,如果大于max或者小于min,则更新maxmin,并同时维护max_locmin_loc.
读入结束后,按照loc/m,loc%m的方式计算其二维坐标即可