输入一个数n,然后输入n阶矩阵数组,主对角线以下如果都是零,输出yes,否则输出no
#include<stdio.h>
int main (void)
{
int i,j,n;
int a[10][10];
printf("Input n:\n");
scanf("%d",&n);
printf("Input number:\n");
for(i=0;i<n;i++)
for (j=0;j<n;j++)
scanf("%d",&a[i][j]);
for(i=1;i<n;i++){
for (j=0;j<i;j++)
if(a[i][j])
{printf("NO");break;}
if(j<i)
break;
}
if(i==n)
printf("YES");
return 0;
}
问题
if(j<i)
break 这个语句第一次循环i=1,j=0 时如果a[1][0]=0,就不理这个语句回去继续循环,如果不等于0就直接break出来,这是为什么,按说只跟i,j的值有关啊
换句话说这个是怎么实现 如果是0就继续循环,非0就break
#include<stdio.h>
int main (void)
{
int i,j,n;
int a[10][10];
printf("Input n:\n");
scanf("%d",&n);
printf("Input number:\n");
for(i=0;i<n;i++)
for (j=0;j<n;j++)
scanf("%d",&a[i][j]);
for(i=1;i<n;i++){
for (j=0;j<i;j++)
if(a[i][j])
{printf("NO");break;}
if(j<i)
break;
}
if(i==n)
printf("YES");
return 0;
}
问题
if(j<i)
break 这个语句第一次循环i=1,j=0 时如果a[1][0]=0,就不理这个语句回去继续循环,如果不等于0就直接break出来,这是为什么,按说只跟i,j的值有关啊
换句话说这个是怎么实现 如果是0就继续循环,非0就break
