用C语言做一个杨辉三角
时间: 2024-11-27 18:14:05 浏览: 3
杨辉三角-使用C语言来实现杨辉三角.zip
杨辉三角(Pascal's triangle)是一个数学上的图形,每一行都是由前一行的数字相加得到的,最开始的一行通常有两个1,其余每个数等于其上方两数之和。我们可以使用嵌套循环和动态内存分配来创建这个三角形。以下是一个简单的C语言程序示例:
```c
#include <stdio.h>
#include <stdlib.h>
// Function to print the row of Pascal's Triangle
void printPascalRow(int n) {
int *row = (int*)malloc(n * sizeof(int)); // Allocate memory for the row
// Initialize the first and last elements to 1
row[0] = row[n - 1] = 1;
// Calculate and print the rest of the row
for (int i = 1; i < n - 1; i++) {
row[i] = row[i - 1] + row[i]; // Each number is the sum of the two above it
printf("%d ", row[i]);
}
// Free allocated memory
free(row);
printf("\n");
}
int main() {
int rows = 5; // You can change this value to display more or fewer rows
for (int i = 0; i < rows; i++) {
printf("Pascal's Triangle Row %d:\n", i + 1);
printPascalRow(i + 1);
}
return 0;
}
```
在这个程序中,`printPascalRow` 函数用于打印指定行的杨辉三角,`main` 函数则遍历并打印所需的行数。每次调用时,都会为新的行分配内存,并根据规则填充数字。
运行此程序,你可以看到前几行的杨辉三角。
阅读全文