找出一個二維數組中的靶點,該位置的元素在該行最大,該列最小

#include<stdio.h>
#define N 4
#define M 5
int main()
{
    int i,j,a[N][M],maxj,max,flag,k;
    for(i=0;i<N;i++)
        for(j=0;j<M;j++)
    {
        scanf("%d",&a[i][j]);
    }
    for(i=0;i<N;i++)
    {
        max=a[i][0];
        maxj=0;
        for(j=0;j<M;j++)
            if(a[i][j]>max)
        {
            max=a[i][j];
            maxj=j;
        }
        flag=1;
        for(k=0;k<N;k++)
        if(max>a[k][maxj])
        {
            flag=0;
            continue;
        }
        if(flag)
        {
            printf("\na[%d][%d]=%d\n",i,maxj,max);
            break;
        }
    }
    if(!flag)
      printf("no\n");
    return 0;

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章