算法思路:可以定义一个二维数组a[n][n]去存储杨辉三角形, a[i][0]=1, a[i][j]=a[i-1][j-1]+a[i-1][j],a[i][i]=1。
代码:
#include<stdio.h>
int main(void)
{
int i,j,n;
scanf("%d",&n); //杨辉三角形的规模
int a[n][n];
for(i=0;i<n;i++)
{
a[i][0]=1;
for(j=1;j<i;j++)
a[i][j]=a[i-1][j-1]+a[i-1][j];
a[i][j]=1;
}
for(i=0;i<n;i++)
{
for(j=0;j<=i;j++) //输出时只需要输出主对角线左下角部分
printf("%4d",a[i][j]);
printf("\n");
}
return 0;
}
运行结果: