惨痛的教训 没有 脑子的我

重要的事情说三遍 if一定要加大括号!!!!if一定要加大括号!!!!if一定要加大括号!!!!

# include<stdio.h>
int main()
{
int m,n,i,j,h,k,leap,a[101][101]={0},c=0;
scanf("%d %d",&n,&m);
for( i=0;i<n;i++)
{
for( j=0;j<n;j++)
{
scanf("%d",&a[i][j]);
}
}

if(n==m)  //等于的临界情况要考虑
{
for(i=0;i<n;i++)
{

for(j=0;j<n;j++)
{
if(a[i][j]==1)
c=c+1;

}
}
if(c==n*n )
leap=1;
else
leap=0;
}

else
{
for(i=0;i<n-m+1;i++)  //大方阵内嵌小方阵  一定要考虑不要超界
{

for(j=0;j<n-m+1;j++)
{

if(a[i][j]==1)
{

for( h=i;h<m+i;h++)
{

for( k=j;k<j+m;k++)
{
if(a[h][k]==1)
{leap=1;}
else
{leap=0;break;}
}
if(leap==0)
{break;}
}
}

if(leap==1)
{break;}

}
if(leap==1)
{break;}
}
}
if(leap==1)
{
printf("NO");}
else
{
printf("YES");
}
return 0;
}

原文地址:https://www.cnblogs.com/wshyj/p/6052609.html