杨辉三角
- 一.什么是杨辉三角
一.什么是杨辉三角
每个数等于它上方两数之和。
每行数字左右对称,由1开始逐渐变大。
第n行的数字有n项。
前n行共[(1+n)n]/2 个数。
…
当前行的数=上一行的数+上一行的前一列的数
void yanghuisanjian(int arr[][20], int n)
{
for (int i = 0; i < n; i++)
{
for (int j = 0; j <= i; j++)
{
if (j == 0)
{
arr[i][j] = 1;
}
else if (i == j)
{
arr[i][j] = 1;
}
else
{
arr[i][j] = arr[i - 1][j] + arr[i - 1][j - 1];
}
}
}
}
void print(int arr[][20], int n)
{
for (int i = 0; i < n; i++)
{
for (int j = 0; j <= i ; j++)
{
printf("%-7d",arr[i][j]);
}
printf("\n");
}
}
int main()
{
int arr[20][20] = { 0 };
yanghuisanjian(arr, 20);
print(arr, 20);
return 0;
}