矩阵鞍点:在矩阵中,一个数在所在行中是最大值,在所在列中是最小值,则被称为鞍点。
详细代码:
#include<stdio.h>
int main()
{
int i,j,n,k;
int a[n][n];
int max,min,row,col;
printf("请输入n的值:");
scanf("%d",&n);
for(i=0;i<n;i++) //创建数组
{
for(j=0;j<n;j++)
{
scanf("%d",&a[i][j]);
}
}
for(i=0;i<n;i++)
{
max=a[i][0]; //令max为第i行第一个元素
for(j=0;j<n;j++)
{
if(a[i][j]>a[i][0])
max=a[i][j];//更新max值
col=j;//记录此时最大值的列标j
}
min=a[0][k];//令min为列上第一个元素
for(k=0;k<n;k++)
{
if(a[i][k]>min)
min=a[i][k];
row=i;//记录此时最小值的行标i
}
if(max==min)
printf("鞍点的坐标为(%d,%d)",row,col);
return 0;
}
}
运行截图: