打印杨辉三角形中出现的问题
#include<iostream.h>
#include<iomanip.h>
#define N 10
void main(void)
{int a[N][N]={{1}};
int i,j;
for(i=0;i<=N-1;i++)
a[i][0]=1;
for(i=0;i<=N-2;i++)
{for(j=0;j<=i;j++)
{a[i+1][j+1]=a[i][j]+a[i][j+1];}
}
for(i=0;i<=N-1;i++,cout<<endl)
{for(j=0;j<=i;j++)
cout<<setw(4)<<a[i][j];
}
}
按照此程序打印没有问题
但是如果把最后一个循环换成:
for(i=0;i<=N-1;i++)
{for(j=0;j<=i;j++)
cout<<setw(4)<<a[i][j];
}
cout<<endl;
}
则打印出来的行数列数均不正确
我很奇怪,这和上面的原理不是一样的吗