#include <iostream>
using namespace std;
int main()
{
int n;
while(cin>>n)
{
int num[1000],i,j,s=1;
num[0]=1;
for(i=1;i<n;++i)
{ num[s++]=1;
for(j=1;j<i;++j)
num[s++]=num[s-i]+num[s-i-1];
num[s++]=1;
}
s=0;
for(i=0;i<n;++i)
{
for(j=0;j<i;++j)
cout<<num[s++]<<" ";
cout<<num[s++]<<endl;
}
cout<<endl;
}
}
tips:建立一个数组,双层for循环,开头结尾都是一,然后每个元素都是上一层两个元素的和。得到一个数组,最后在for'循环输出。
一遍AC,注意一下每行之后没有空格就行。