杨辉三角的基本规律是:
每行端点和结尾的数是1;
每个数等于它上方两数之和;
每行数字左右对称,由1开始增大;
第n行的数字有n项;
如下图所示:
按照蓝色线的规律,代码实现如下:
按照红色线的规律,代码实现如下:
源代码:
#include<stdio.h>
#include<string.h>
#include<assert.h>
#define SIZE 10
void PascalTriangle()
{
int i;
int j;
int arr[SIZE][SIZE];
for(i=0;i<SIZE;i++)
{
for(j=0;j<=i;j++)
{
if(j==0||j==i)
{
arr[i][j]=1;
}
else
{
arr[i][j]=arr[i-1][j-1]+arr[i-1][j];
}
}
}
for(i=0;i<SIZE;i++)
{
for(j=0;j<=i;j++)
{
printf("%d ",arr[i][j]);
}
printf("\n");
}
}
int main()
{
PascalTriangle();
return 0;
}
运行结果: