int FindPoint()
{
#define ROW 5
#define COL 5
int arr[ROW][COL];
int j = 0;
int i = 0;
srand((unsigned int)time(NULL));
for(i = 0; i < ROW; i++)
{
for(j = 0; j < COL; j++)
{
arr[i][j] = rand()%10;
printf("%-4d ", arr[i][j]);
}
printf("\n");
}
int col;
int maxval;
int minval;
//先找到最大值的列
for(int i = 0; i < ROW; i++)
{
maxval = arr[i][0]; //假设第一列就是该行的最大值所在的列
col = 0;
for(int j = 0; j < ROW; j++) //找该行的最大值与第一列比较
{
if(maxval < arr[i][j])
{
maxval = arr[i][j];
col = j; //最大值的列为j
}
}
//再找到最小值的行
minval = arr[0][col];
for(int k = 0; k < ROW; k++) //找该列最小值
{
if(minval > arr[k][col])
{
minval = arr[k][col];
}
}
if(maxval == minval)
{
return maxval;
}
}
return INT_MIN;
}
int main()
{
int a = FindPoint();
if(a == INT_MIN)
{
printf("没有鞍点\n");
}
else
{
printf("%d\n",a);
}
return 0;
}