杨辉三角 经典问题

1216: 杨辉三角

时间限制: 1 Sec   内存限制: 128 MB
提交: 1   解决: 0

题目描述

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

输入

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

输出

对应于每一个输入,请输出相应层数的杨辉三角,每一层的整数之间用一个空格隔开,每一个杨辉三角后面加一个空行。

样例输入

2 3

样例输出

1
1 1

1
1 1
1 2 1

经典的问题啊各种oj都有,不解释直接代码吧

#define _CRT_SBCURE_MO_DEPRECATE  
#include  
#include  
#include  
#include  
#include  
#include  
#include  
#include  
#include  
#include  
#include   
using namespace std;

int b[35], n;
int main()
{
	while (scanf("%d", &n) != EOF) {
		b[0] = 1;
		printf("1\n");
		for (int i = 1; i < n; i++) {
			b[i] = 1;
			for (int j = i - 1; j > 0; j--)
				b[j] = b[j] + b[j - 1];
			for (int j = 0; j <= i; j++) {
				printf("%d", b[j]);
				if (j != i)
					printf(" ");
			}
			printf("\n");
		}
		printf("\n");
	}
	system("pause");
	return 0;
}





你可能感兴趣的:(水题)