输出杨辉三角形的前n行。
输入描述
第一行有一个正整数n,保证n不超过20。
输出描述
共有n行,从第1行至第n行,每行输出与行数相等个数的整数,整数后输出一个空格。
请注意行尾输出换行。
样例输入
6
样例输出
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
#include<stdio.h>
void main()
{
int a[20][20],n,i,j;
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++){
/*由于在第一个循环中 已经说明了每一行的第一个数的值,
因此这里也直接从第二个数开始,又因为每一排排数等于数字
的个数 ,因此 j = i - 1 */
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("%d ",a[i][j]);
}
printf("\n");
}
}