//打印杨辉三角
#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;
}

本文介绍了一个使用C语言实现打印杨辉三角的程序,包括组合数的计算和三角形的排版。
11万+

被折叠的 条评论
为什么被折叠?



