求二维数组arr[5][4]中的鞍点。鞍点是指数组arr中arr[i][j]元素值在第i行中最小,且在第j列中最大。试编写一程序找出数组arr中所有的鞍点,并输出其下标值。如果没有鞍点,打印输出Not Found。用C语言
时间: 2024-05-31 10:07:39 浏览: 18
#include <stdio.h>
int main() {
int arr[5][4] = {{10, 20, 30, 40}, {50, 60, 70, 80}, {90, 100, 110, 120}, {130, 140, 150, 160}, {170, 180, 190, 200}};
int i, j, min, max, row, col, flag = 0;
for (i = 0; i < 5; i++) {
min = arr[i][0];
col = 0;
for (j = 1; j < 4; j++) {
if (arr[i][j] < min) {
min = arr[i][j];
col = j;
}
}
max = arr[0][col];
row = 0;
for (j = 1; j < 5; j++) {
if (arr[j][col] > max) {
max = arr[j][col];
row = j;
}
}
if (min == max) {
printf("鞍点为:arr[%d][%d]=%d\n", row, col, min);
flag = 1;
}
}
if (flag == 0) {
printf("Not Found\n");
}
return 0;
}