求解释下面的程序作用
#include<stdio.h>main()
{
int i,j,k,x1=0,x2=0,y=0,m=0,n,l=0,a[3][3]={1,23,2,7,9,11,13,15,17};
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
if(a[i][j]>m)
{
m=a[i][j];
x1=i;
y=j;
n=m;
}
for(k=0;k<3;k++)
{
if(a[k][y]<n)
{
n=a[k][y];
x2=k;
}
}
}
if(x1==x2)
printf("%d行 %d列 %d\n",x1+1,y+1,a[x1][y]);
else
l++;
}
if(l>2)
printf("error\n");
}