帮我写c语言杨辉三角
时间: 2024-10-23 13:16:20 浏览: 17
杨辉三角是一个二项式系数的几何排列,通常用表格的形式表示,在C语言中,我们可以用动态数组来创建并打印这个三角形。以下是一个简单的示例,展示了如何通过循环结构生成和输出杨辉三角:
```c
#include <stdio.h>
// 定义行数
int rows = 5;
void printPascalTriangle() {
int** triangle = (int **)malloc(sizeof(int*) * rows);
for (int i = 0; i < rows; ++i) {
triangle[i] = (int *)malloc(sizeof(int) * (i + 1));
triangle[i][0] = triangle[i][i] = 1;
// 计算并存储每个位置的值
for (int j = 1; j < i; ++j) {
triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j];
}
// 打印当前行
printf(" ");
for (int k = 0; k <= i; ++k) {
printf("%4d", triangle[i][k]);
}
printf("\n");
}
// 释放内存
for (int i = 0; i < rows; ++i) {
free(triangle[i]);
}
free(triangle);
}
int main() {
printPascalTriangle();
return 0;
}
```
在这个程序中,我们首先分配一个二维数组来存储每一行的数据,然后计算每个元素的值(即上一行的两个相邻元素之和),最后打印出整个三角形。
阅读全文