编程在屏幕上输出如下所示的杨辉三角形。杨辉三角的规律是:每行的第1个与最后1个数均为1;杨辉三角除了两端为1以外,其余的各数都等于它上一行左边列和上一行同列的两数之和。 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 用C语言写
时间: 2024-12-28 20:40:22 浏览: 4
在C语言中,你可以使用嵌套循环来打印杨辉三角。下面是一个简单的示例代码:
```c
#include <stdio.h>
void printPascalTriangle(int n) {
for (int i = 0; i <= n; i++) {
// 打印前导空格,使得每一行都有相同的缩进
for (int j = 0; j < n - i; j++) {
printf(" ");
}
// 打印当前行的数字
int num = 1;
for (int k = 0; k <= i; k++) {
printf("%d ", num);
if (k == 0 || k == i) {
num = 1; // 第1个和最后一个数始终是1
} else {
num = num * (i - k + 1) / k;
}
}
printf("\n");
}
}
int main() {
int rows = 5; // 杨辉三角的行数
printPascalTriangle(rows);
return 0;
}
```
这段代码首先定义了一个`printPascalTriangle`函数,用于递归地计算并打印每个位置的数字。在主函数中,你可以指定想要打印的杨辉三角的行数。
注意,上述代码中的杨辉三角求解公式 `num = num * (i - k + 1) / k` 实际上是通过组合数学原理得到的,用于动态计算每一行的元素值。如果要用递归的方式来实现,代码将更为复杂,这里只展示了非递归的方式。
阅读全文