用C语言函数写杨辉三角
时间: 2024-12-23 09:22:16 浏览: 0
杨辉三角是一个经典的组合数学图形,它展示了二项式系数(n choose k)的值。在C语言中,我们可以用递归或动态规划的方式来实现一个函数来打印杨辉三角。这里是一个简单的动态规划版本:
```c
#include <stdio.h>
// 定义一个二维数组用于存储杨辉三角
int triangle[100][100];
void printPascalTriangle(int n) {
for (int i = 0; i <= n; ++i) {
// 打印行
for (int j = 0; j <= i; ++j) {
if (j == 0 || j == i)
printf("%d ", triangle[i][j]);
else
printf("%4d ", triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j]); // 动态计算值
}
printf("\n");
}
}
// 初始化杨辉三角的第一行
void initTriangle() {
triangle[0][0] = 1;
for (int i = 1; i < 100; ++i) {
triangle[i][0] = 1;
triangle[i][i] = 1;
}
}
int main() {
int n = 5; // 指定打印的行数,可以根据需要调整
initTriangle();
printPascalTriangle(n);
return 0;
}
```
这个程序首先初始化前两行的值,然后通过循环逐行填充并打印出杨辉三角。注意,这里的数组大小限制为100*100,实际应用中你可以根据需要动态调整。
阅读全文