//这个函数在一个2维数组中,为了求有没有a[i][j]在i行&&j列都是最大的数,有的话输出a[i][j],没有的话提示
//算法思路:先找出i行最大的数记为a[i][h],再找出j行记为a[k][j],然后进行对比.相等说明是鞍点,不相等则不是.
include"iostream.h"
#define m 4
#define n 5
void main()
{
int i,j,h,k;
h=k=0;
int a[m][n];
//----------------------------------------
for(i=0;i
for(j=0;j{
cout<<"输入数字:a["<";
cin>>a[i][j];
if(j==(m-1))cout<}
//---------------------------------------
for(c=0;c{
//------------------------------------------
for(i=0;i{
if(a[i][h]>=a[++i][h])continue;
k=i;
}
//---------------------
for(j=0;j{
if(a[k][j]>=a[k][++j])continue;
h=j;
}
//------------------------------------------
if((a[i][h]==a[k][j])&&(i==k)&&(h==j)) //判断鞍点
cout<else
cout<h=0;//进行++i行判定
}
//-------------------------------------------
}
//没有经过调试,希望大家帮帮忙....
--------------------next---------------------
阅读(1072) | 评论(0) | 转发(0) |