#define N 15
void main()
{
int i,j,a[N][N]; /* 数组为15行15列,0行0列不用 */
for(i=1;i<N;i++)
{
a[i][1]=1; /* 使第一列元素的值为1 */
a[i][i]=1; /* 使对角线元素的值为1 */
}
for(i=3;i<N;i++) /* 从第三行开始处理 */
for(j=2;j<=i-1;j++)
a[i][j]=a[i-1][j-1]+a[i-1][j];
for(i=1;i<N;i++) /* 输出数组各元素的值 */
{
for(j=1;j<=i;j++)
printf("%4d",a[i][j]);
printf("\n");
}
printf("\n");
}
编该程序要注意观察各个值该怎么处理,从第三行起,除上面指出的第一个数和最后一个数外,其余各数是上一行同列和前一列两个数之和,可以这样表示a[i][j]=a[i-1]+a[j-1],其中i为行数,j为列数。