求一个二维数组中的鞍点

来源:互联网 发布:台州妇产医院网络咨询 编辑:程序博客网 时间:2024/05/05 18:45
#include<stdio.h>
#define  N 3
#define  M 4


int main()
{
int a[N][M];
printf("输入数组a,4行5列:\n");
for(int i=0;i<N;i++)
for(int j=0;j<M;j++)
scanf("%d",&a[i][j]);


int maxN,minM;
int maxj;
for(int i=0;i<N;i++)//每行进行遍历
{
maxN=a[i][0];
maxj=0;
for(int j=1;j<M;j++)//找到每行最大。
{
if(maxN<a[i][j])
{
maxN=a[i][j];
maxj=j; 
}
}
//找到之后,看是否为该列最小。
minM=maxN;
int flag=true;
for(int i=0;i<N;i++)
{
if(minM>a[i][maxj])
{
flag=false;
break;
}
}
if(flag)
{
printf("是鞍点:%d\n",minM);
}

}
return 0;

}


求一个二维数组中的鞍点。

例子:

1 2 8 7

2 3 5 4

1 8 6 2

0 0
原创粉丝点击