c语言求一个二维数组中的鞍点
时间: 2023-12-16 08:26:37 浏览: 140
以下是C语言求一个二维数组中的鞍点的代码和解释:
```c
#include <stdio.h>
#define ROW 3
#define COL 3
int main()
{
int arr[ROW][COL] = {{1, 2, 3}, {4, 5, 6}, {7 8, 9; // 定义一个3行3列的二维数组
int i, j, k, max, min, flag;
for (i = 0; i < ROW; i++) // 遍历每一行
{
max = arr[i][0]; // 假设该行第一个元素为最大值
flag = 1; // 假设该元素为鞍点
for (j = 1; j < COL; j++) // 遍历该行每一个元素
{
if (arr[i][j] > max) // 如果该元素大于最大值
{
max = arr[i][j]; // 更新最大值
k = j; // 记录该元素所在的列
}
}
for (j = 0; j < ROW; j++) // 遍历该元素所在的列
{
if (arr[j][k] < max) // 如果该列中有元素小于最大值
{
flag = 0; // 该元素不是鞍点
break;
}
}
if (flag) // 如果该元素是鞍点
{
printf("鞍点为:%d\n", max); // 输出鞍点
return 0;
}
}
printf("该二维数组中无鞍点\n"); // 如果遍历完所有元素都没有找到鞍点,则输出无鞍点
return 0;
}
```
阅读全文