程序填空题:找出二维数组中的鞍点
找出二维数组中的鞍点,即该位置上的元素在该行最大、在该列最小。
c++
#include <stdio.h>
#define N 4
#define M 5 // 数组为4行5列
int main()
{
int i,j,k,a[N][M],max,maxj,flag;
for (i=0;i<N;i++)
for (j=0;j<M;j++)
scanf("%d",);
for (i=0;i<N;i++)
{
maxj=0;
for (j=0;j<M;j++)
if (a[i][j]>max)
{
max=a[i][j];
maxj=j;
}
flag=1;
for (k=0;k<N;k++)
if (max>a[k][maxj])
{
continue;
}
if(flag)
{
printf("a[%d][%d]=%d\n",);
break;
}
}
if(!flag)
printf("It is not exist!\n");
return 0;
}
答案:
第1空:&a[i][j]
第2空:max=a[i][0];
第3空:flag=0;
第4空:i,maxj,max
c++
#include <stdio.h>
#define N 4
#define M 5 // 数组为4行5列
int main()
{
int i,j,k,a[N][M],max,maxj,flag;
for (i=0;i<N;i++)
for (j=0;j<M;j++)
scanf("%d",);
for (i=0;i<N;i++)
{
maxj=0;
for (j=0;j<M;j++)
if (a[i][j]>max)
{
max=a[i][j];
maxj=j;
}
flag=1;
for (k=0;k<N;k++)
if (max>a[k][maxj])
{
continue;
}
if(flag)
{
printf("a[%d][%d]=%d\n",);
break;
}
}
if(!flag)
printf("It is not exist!\n");
return 0;
}
答案:
第1空:&a[i][j]
第2空:max=a[i][0];
第3空:flag=0;
第4空:i,maxj,max