杨辉三角(Pascal’s Triangle)是一个二维的数字三角形,它的每一行都是二项式系数。下面是一个用C语言实现杨辉三角的示例:
#include<stdio.h>
// 计算组合数 C(n, k)
int combination(int n, int k) {
if (k == 0 || n == k) {
return 1;
}
return combination(n - 1, k - 1) + combination(n - 1, k);
}
// 打印杨辉三角的前 n 行
void print_pascal_triangle(int n) {
for (int i = 0; i < n; i++) {
// 打印空格,使得三角形居中对齐
for (int j = 0; j < n - i - 1; j++) {
printf(" ");
}
// 打印第 i 行的数字
for (int j = 0; j <= i; j++) {
printf("%d ", combination(i, j));
}
// 换行
printf("\n");
}
}
int main() {
int n;
printf("请输入需要打印的杨辉三角行数: ");
scanf("%d", &n);
print_pascal_triangle(n);
return 0;
}
这段代码首先定义了一个计算组合数的函数combination
,然后定义了一个打印杨辉三角的函数print_pascal_triangle
。在main
函数中,我们接收用户输入的行数,并调用print_pascal_triangle
函数打印相应的杨辉三角。