c语言:找出一个二维数组的“鞍点”(多个鞍点)

题目:找出一个二维数组的“鞍点”(多个鞍点)

能帮忙指出一下代码的问题吗?

代码:

//找出鞍点
#include
int main()
{
    int i,j,k,z,min,max,flag=0;
    int arr[20][20],a[10],row,col;
    printf("请输入行,列:");
    scanf("%d%d",&row,&col);
    for(i=0;i//输入数据
    {
        for(j=0;jscanf("%d",&arr[i][j]);
        }
    }
    for(i=0;i//求行最大
    {
        max=arr[i][0];
        for(j=1;jif(arr[i][j]>max)
                max=arr[i][j];
        }
        for(z=0,k=0;zif(arr[i][z]==max)
            {
                a[k]=z;
                k++;
            }
        }
        min=max;
        for(j=0;jfor(z=0;zif(min>arr[z][a[k]])
                    break;
            }
            if(z==row)
            {
                printf("鞍点有:%d",arr[i][a[k]]);
                flag++;
            }
        }
    }
    if(flag==0)
        printf("无鞍点");
    return 0;
}