#include<stdio.h>
int max(int x,int y){
int z;
z=x>y?x:y;
return(z);
}
int min(int x,int y){
int z;
z=x<y?x:y;
return(z);
}
int main()
{
int n;
printf("请输入列数\n");
scanf("%d",&n);
int a[n][4],i,j,k,t,p=0,b[n],c[4];
printf("输出数组:\n");
for(i=0;i<n;i++)
for(j=0;j<n;j++)
scanf("%d",&a[i][j]);
for(k=0;k<4;k++){
for(i=1;i<n;i++)
b[k]=min(a[i][k],a[i-1][k]); //第k行最小的列数
}
for(t=0;t<n;t++){
for(i=1;i<4;i++)
c[t]=max(a[t][i],a[t][i-1]); //第t列最大的行数
}
for(k=0;k<4;k++){
for(t=0;t<n;t++){
if(a[t][k]==b[k]==c[t]){
printf("鞍点为:%d\n",c[t]);
p=1;
}
}
}
if(p==0)
printf("无鞍点");
return 0;
}
哪里出错了??救救孩子吧