杨辉三角形规律:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
三角形图案输出
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
实现思路:我们定义一个二维数组,所有元素先初始化为 0;
给数组的第 1 列和对角线元素赋值为 1;其余元素 a[i][j]=a[i-1][j-1]+a[i-1][j];
1 0 0 0 0
1 1 0 0 0
1 2 1 0 0
1 3 3 1 0
1 4 6 4 1
编程实现:
#include <iostream>
#include <Windows.h>
#include <iomanip>
using namespace std;
#define N 10
int main(void)
{
int a[N][N] = { 0 };
//将第一列和最后一列舒适化为1
for (int i = 0; i < N; i++)
{
for (int j = 0; j <= i; j++)
{
if (j == 0 || i == j)
{
a[i][j] = 1;
}
else
{
a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
}
}
}
//宽度设置
for (int i = 0; i < N; i++)
{
cout << setw((N - i) * 4) << a[i][0];
for (int j = 1; j <= i; j++)
{
cout << setw(8) << a[i][j];
}
cout << endl;
}
system("pause");
return 0;
}