1.实验目的:掌握二维数组的计算,以及常用字符函数的使用。
2.实验问题:设计一个查找鞍点的算法。一个二维数组中的鞍点,是指该位置上的元素,在所在行中最大,而在所在列中最小;一个二维数组也可能没有鞍点。
3.解题思路:可用二维数组保存元素,按照鞍点的定义,只要找出一些点,在该点位置上的元素,在该行最大,在该列上最小即可。可以先找出第i行上最大的元素,记下所在的列号c,最大元素的值rmax;然后在第c列上,把rmax和该列上的其他元素比较,判断该列上rmax是否是最小的元素,只要有一个元素是小于它,则说明rmax在该列上不是最小元素;若rmax是c列上最小的,则找到鞍点,打印此鞍点的值,然后重复以上步骤,直至所有的行查找完毕。
4.程序实现:
/* 查找鞍点 */
#include "stdio.h"
#define m 3
#define n 3
int find(int R[m][n]) /*查找鞍点函数*/
{
int i,j,flag,rmax,k,c;
i