编写函数找出矩阵A中所有鞍点{鞍点指满足是i行最小j行最大的元素A[i][j]}

2025-05-18 06:15:08
推荐回答(1个)
回答(1):

void func(int x, int y, int A[x][y])
{
int i,j,k;
int min;

for(i = 0; i < x; i ++)
{
for(j = 0; j < y; j ++)
{
if(j == 0) min=A[i][j];
else if(min > A[i][j])min=A[i][j];
}//找出第i行最小值min
for(j = 0; j < y; j ++)
{
if(min != A[i][j]) continue;
for(k = 0; k < x; k ++)
if(A[k][j] > min) break;
if(k == x) //对于第j列不存在比min更大的值,即min为最大值,符合要求
printf("find A[%d][%d] = %d\n", i, j, min);
}
}
}