洛谷上的杨辉三角始终过不了

问题遇到的现象和发生背景 洛谷
用代码块功能插入代码,请勿粘贴截图 #include

int arr[1000][1000];
int main()
{
int n = 0;
scanf("%d", &n);
int i = 0;
for (i = 1;i <= n;i++)
{
arr[i][1] =arr[i][i]=1;
}

for (i = 1;i <= n;i++)
{
    int j = 0;
    for (j = 2;j 
    {
        arr[i][j] = arr[i - 1][j] + arr[i - 1][j - 1];
    }    
}    
for (i = 1;i <= n;i++)
{
    int j = 0;
    for(j=1;j<=i;j++)
    {
        printf("%d", arr[i][j]);
    }    
    printf("\n");
}
return 0;

}

运行结果及报错内容 个别能过

#include<stdio.h>
int main()
{
    int n,i,j;
    scanf("%d",&n);
    int a[21][21]={0};
    for(i=1;i<=n;i++)
     {
     a[i][1]=1;
     a[i][i]=1;
     }
    
    for(i=1;i<=n;i++)
     {
         for(j=2;j<i;j++)
         {
             a[i][j]=a[i-1][j]+a[i-1][j-1];
         }
     }
    
    for(i=1;i<=n;i++)
     {
     for(j=1;j<=i;j++){
     
      printf("%d ",a[i][j]);
}
printf("\n");
}
    return 0;
}