/*
用C++编写程序:找出二维数组鞍点,即该位置上的元素行最大,列最小,cout输出,当然可能没有鞍点。
数组100*100
int型
eg:
1 2 3 4
5
随机数 6
7
4就是鞍点
用随机数(0-99)填充
*/
#include<iostream>
#include<time.h>
#include<stdlib.h>
using namespace std;
int main(void)
{
const int N=100;
int arr[N][N];
int i,j,maxj,max,flag;
srand(time(NULL));
cout<<"输出随机数:"<<endl;
for(i=0;i<N;i++)
{
for(j=1;j<=N;j++)
{
arr[i][j]=rand()%100;
cout<<arr[i][j]<<'\t';
}
}
max=arr[0][0];
maxj=0;
for(j=0;j<N;j++)
{
if(max<arr[0][j])
{
max=arr[0][j];
maxj=j;
}
}
flag=1;
for(i=0;i<N;i++)
{
if(arr[i][maxj]<max)
{
flag=0;
break;
}
}
if(flag)
{
cout<<"鞍点为"<<max<<endl;
}
else
cout<<"没有鞍点!"<<endl;
return 0;
}
用C++编写程序:找出二维数组鞍点,即该位置上的元素行最大,列最小,cout输出,当然可能没有鞍点。
数组100*100
int型
eg:
1 2 3 4
5
随机数 6
7
4就是鞍点
用随机数(0-99)填充
*/
#include<iostream>
#include<time.h>
#include<stdlib.h>
using namespace std;
int main(void)
{
const int N=100;
int arr[N][N];
int i,j,maxj,max,flag;
srand(time(NULL));
cout<<"输出随机数:"<<endl;
for(i=0;i<N;i++)
{
for(j=1;j<=N;j++)
{
arr[i][j]=rand()%100;
cout<<arr[i][j]<<'\t';
}
}
max=arr[0][0];
maxj=0;
for(j=0;j<N;j++)
{
if(max<arr[0][j])
{
max=arr[0][j];
maxj=j;
}
}
flag=1;
for(i=0;i<N;i++)
{
if(arr[i][maxj]<max)
{
flag=0;
break;
}
}
if(flag)
{
cout<<"鞍点为"<<max<<endl;
}
else
cout<<"没有鞍点!"<<endl;
return 0;
}