用c语言实现杨辉三角
时间: 2024-12-22 19:21:58 浏览: 41
杨辉三角,也称为帕斯卡三角,是一个经典的数学图形,它显示了二项式系数。在C语言中,我们可以用数组动态地构建这个三角形。下面是一个简单的示例代码来实现:
```c
#include <stdio.h>
#define MAX_SIZE 50 // 定义最大行数
// 动态内存分配函数
int** create_triangle(int size) {
int** triangle = (int **)malloc(size * sizeof(int *));
for (int i = 0; i < size; ++i) {
triangle[i] = (int *)malloc((i + 1) * sizeof(int));
triangle[i][0] = triangle[i][i] = 1;
if (i > 0) {
for (int j = 1; j < i; ++j)
triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j];
}
}
return triangle;
}
// 打印杨辉三角
void print_triangle(int** triangle, int size) {
for (int i = 0; i < size; ++i) {
for (int j = 0; j <= i; ++j) {
printf("%d ", triangle[i][j]);
}
printf("\n");
}
}
int main() {
int size = MAX_SIZE;
int** triangle = create_triangle(size);
print_triangle(triangle, size);
// 释放内存
for (int i = 0; i < size; ++i) {
free(triangle[i]);
}
free(triangle);
return 0;
}
```
在这个程序中,`create_triangle` 函数负责创建并填充杨辉三角,`print_triangle` 函数用于打印结果。注意,在完成任务后,需要手动释放动态分配的内存。
阅读全文
相关推荐















