c语言打印杨辉三角n行
时间: 2024-11-13 13:28:32 浏览: 17
C语言打印杨辉三角示例汇总
在C语言中,打印杨辉三角的n行通常使用动态内存分配和递归的方式来实现。杨辉三角是一个二项式系数表,每行的数字表示组合数。下面是一个简单的示例代码,展示了如何生成和打印n行的杨辉三角:
```c
#include <stdio.h>
#define ROWS 5 // 可根据需要修改行数
void print_pascal_triangle(int row) {
int** triangle = (int **)malloc(sizeof(int*) * row);
for (int i = 0; i < row; i++) {
triangle[i] = (int *)malloc(sizeof(int) * (i + 1));
triangle[i][0] = triangle[i][i] = 1;
if (i > 1) {
for (int j = 1; j < i; j++)
triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j];
}
}
for (int i = 0; i < row; i++) {
for (int j = 0; j <= i; j++) {
printf("%d ", triangle[i][j]);
}
printf("\n");
}
for (int i = 0; i < row; i++) {
free(triangle[i]);
}
free(triangle);
}
int main() {
int n = ROWS;
print_pascal_triangle(n);
return 0;
}
```
运行此程序时,将打印出指定行数(这里设为5行)的杨辉三角。如果你想要改变行数,只需修改`ROWS`变量即可。
阅读全文