郑州轻工业学院OJ-杨辉三角

138 阅读1分钟

                                                            杨辉三角

 

Problem Description

还记得中学时候学过的杨辉三角吗?具体的定义这里不再描述,你可以参考以下的图形:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1

Input

输入只包含一个正整数n(1 <= n <= 30),表示将要输出的杨辉三角的层数。

Output

输出相应层数的杨辉三角,每一层的整数之间用一个空格隔开。

Sample Input

4

Sample Output

1

1 1

1 2 1

1 3 3 1

题意描述:

输出杨辉三角形。

解题思路:

输入一个整数,输出对应杨辉三角形的层数,注意在输出杨辉三角形时,数字之间有空格最后一个数后面没空格

程序代码:

#include<stdio.h>
int main()
{
    int a[40][40],i,j,n;

	while(scanf("%d",&n)!=EOF)
	{
		for(i=0;i<n;i++)
		{
			a[i][0]=1;
			a[i][i]=1;
		}
		for(i=2;i<n;i++)
			for(j=1;j<i;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("%d ",a[i][j]);
			printf("%d\n",a[i][j]);
		}
	}
	return 0;
}