#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<stdlib.h>#include<iostream>usingnamespacestd;
#define N 10void main()
{
int a[N][N] = { 0 };
for (int i = 0; i < N; i++)
{
for (int j = 0; j <= i; j++)
{
if (j == 0 || i == j)
a[i][j] = 1;
else
a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
}
}
for (int i = 0; i < N; i++)
{
printf("%*d", 20 - 2 * i, a[i][0]);
for (int j = 1; j <= i; j++)
{
printf("%4d", a[i][j]);
}
printf("\n");
}
system("pause");
}
python代码
# -*- coding: utf-8 -*-"""
Created on Sat Nov 4 20:22:59 2017
@author: yangwenbin
"""defPascal(N):
Each_layer_list=[] #存放没层的元素for Each_layer in range(N):
a=Each_layer_listNum(Each_layer,Each_layer_list)
Each_layer_list=[] #置空,用于存放后面存放当前层的元素for space in range(N+10,2*Each_layer,-1):
print(end=' ')
for num in a:
print("%c%d"%(' ',num),end=' ')
Each_layer_list.append(num) #将当前层元素赋值给Each_layer_list,用于下一层计算pass
print()
passpassdefEach_layer_listNum(Each_layer,Each_layer_list):
temp=[1]
if Each_layer==0or Each_layer==1:
Each_layer_list.append(1)
return Each_layer_list
else:
for i in range(Each_layer-1):
temp.append(Each_layer_list[i]+Each_layer_list[i+1])
pass
temp.append(1)
return temp
pass
Pascal(7)