//打印杨辉三角
#include <stdio.h>
#define N 12
long combi(int n, int r)
{
int i;
long p = 1;
for(i = 1; i <= r; i++)
p = p * (n-i+1) / i; //组合值,(n-r)!/r!
return p;
}
void paint()
{
int n, r, t;
for(n = 0; n <= N; n++)
{
for(r = 0; r <= n; r++)
{
int i;/* 排版设定开始 */
if(r == 0)
{
for(i = 0; i <= (N-n); i++) //第一个数字出现前打印空格
printf(" ");
}
else
{
printf(" ");
} /* 排版设定结束 */
printf("%3d", combi(n, r));
}
printf("\n");
}
}
int main(void)
{
paint();
return 0;
}