输入n,打印n行杨辉三角形,每个数字后有一个空格,使用C语言
时间: 2024-09-22 11:09:06 浏览: 27
在C语言中,要打印杨辉三角形(Pascal's Triangle),我们可以使用递归或者迭代的方式来实现。这里我给你展示一种简单的迭代方法:
```c
#include <stdio.h>
// 打印杨辉三角形
void printPascalTriangle(int n) {
// 初始化第一行和第二行
if (n <= 0)
return;
for (int i = 0; i <= n; i++) {
// 打印当前行的数字,并在它们之间添加空格
int num = 1; // 杨辉三角形的每个数都是1
printf("%d", num);
for (int j = 1; j < i; j++)
printf(" %d", num); // 输出空格
printf("\n"); // 每行结束换行
// 计算下一行的数字
for (int k = i + 1; k <= n; k++) {
num = num * (i - k + 1) / k; // 根据杨辉三角形的公式计算下一个数字
printf("%d", num);
}
}
}
int main() {
int n;
printf("请输入杨辉三角形的层数(n): ");
scanf("%d", &n);
printPascalTriangle(n);
return 0;
}
```
在这个代码中,用户输入n值后,会打印出n行的杨辉三角形。每行的数字计算基于前一行的数字,遵循杨辉三角形的生成规则。