实现过程:
一、第一个for循环将对角线和第一列都置成1,即a[i][i]=1;a[i][1]=1;
二、再用两个for循环给除对角线和第一列之外的其他元素赋值,由杨辉三角的规律可知除置1的元素以外的其他元素都是对应的同列的上一行元素与它前一列对应的上一行元素之和,即
a[i][j]=a[i-1][j-1]+a[i-1][j]。
三、用for循环嵌套打印出各元素。
代码如下:
#include<stdio.h>
int main()
{
int i = 0, j = 0;
int n = 0;
int a[100][100];
printf("请输入要打印的行数\n");
scanf("%d",&n);
for (i = 0; i <n; i++)
{
a[i][i] = 1;
a[i][0] = 1;
}
for (i = 2; i < n; i++)
{
for (j = 1; j <= i-1; j++)
{
a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
}
}
for (i = 0; i < n; i++)
{
for (j = 0; j <= i; j++)
printf("%5d",a[i][j]);
printf("\n");
}
system("pause");
return 0;
}
转载于:https://blog.51cto.com/haipi/1708334