#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;
#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