杨辉三角,本质上是二项式(a+b)的n次方展开后各项的系数排成的三角形。其性质包括:每行的端点数为1, 一个数也为1;每个数等于它左上方和上方的两数之和。
void pt(int n)
{
int ch[100][100] = { 0 };
for (int i = 0; i < n; i++)//给数组赋值
{
for (int j = 0; j < i + 1; j++)//第一行有一个元素
{ //第二行有两个元素,以此类推
if (i == j) //得出i和j的关系,条件j<i+1
{
ch[i][j] = 1; //对角元素都为1
}
else if (j == 0)
{
ch[i][j] = 1; //第一列元素都为1
}
else
{
ch[i][j] = ch[i - 1][j - 1] + ch[i - 1][j];
}
}
}
for (int i = 0; i < n; i++)//打印三角
{
for (int j = 0; j < i + 1; j++)
{
printf("%-3d ", ch[i][j]);
}
printf("\n");
}
}
int main()
{
int n = 0;
scanf("%d", &n);
pt(n);
return 0;
}