用c语言求解"找二维数组中的元素"

问题如图:

img


我只能想出每一行最大值,每一列最小值,但是怎么把二者结合,我不太懂

供参考:

#include <stdio.h>
#define M 100        //行
#define N 100        //列
int main()
{
    int a[M][N] = { 0 };
    int m=4,n=5,i,j,max,min;
    int row = 0, col = 0;

    //scanf("%d%d",&m, &n); //m行 ,n列
    for (i = 0; i < m; i++) {
        for (j = 0; j < n; j++) {
            scanf("%d", &a[i][j]);//输入 m*n 矩阵
        }
    }

    for (i = 0; i < m; i++)
    {
        max = a[i][0];
        for (j = 0; j < n; j++) {
            if (a[i][j] > max) {
                max = a[i][j];
                col = j;
            }
        }
        min = a[0][col];
        for (j = 0; j < m; j++) {
            if (a[j][col] < min) {
                min = a[j][col];
                row = j;
            }
        }
        if (min == max) {
            printf("%d %d %d", row, col, a[row][col]);
            break;
        }
    }
    if (min != max) {
        printf("It is not exist!");
    }
    return 0;
}

最好能把代码发一下,这个能直观些,谢谢