用C语言写一个找二维数组鞍点的代码
时间: 2023-05-23 12:04:43 浏览: 69
A:
```c
#include <stdio.h>
int main() {
int arr[3][3] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; // 需要查找的二维数组
int i, j;
int is_saddle = 0; // 是否有鞍点的标志
for (i = 0; i < 3; i++) {
int min_row_value = arr[i][0]; // 当前行的最小值
int min_row_index = 0; // 当前行最小值的下标
for (j = 1; j < 3; j++) {
if (arr[i][j] < min_row_value) {
min_row_value = arr[i][j];
min_row_index = j;
}
}
int max_col_value = arr[0][min_row_index]; // 当前列的最大值
for (j = 1; j < 3; j++) {
if (arr[j][min_row_index] > max_col_value) {
max_col_value = arr[j][min_row_index];
}
}
if (min_row_value == max_col_value) { // 如果当前最小值等于当前最大值,则是鞍点
printf("鞍点坐标:%d,%d,值:%d\n", i, min_row_index, min_row_value);
is_saddle = 1;
break;
}
}
if (!is_saddle) { // 如果没有鞍点,则输出没有鞍点的提示
printf("没有鞍点\n");
}
return 0;
}
```
注:以上代码是一个简单的示例,实际开发中可能需要加入更多的容错、异常处理等代码。