用C语言怎么编写杨辉三角
时间: 2024-11-06 15:20:25 浏览: 16
在C语言中编写杨辉三角,可以通过循环结构来实现,这里给出一个简单的示例,使用二维数组存储并打印出杨辉三角:
```c
#include <stdio.h>
// 定义三角形的最大行数
#define MAX_ROWS 10
// 功能:打印杨辉三角
void printPascalTriangle(int triangle[MAX_ROWS][MAX_ROWS], int n) {
for (int i = 0; i <= n; i++) { // 遍历行
for (int j = 0; j <= i; j++) { // 遍历列
printf("%d ", triangle[i][j]); // 打印当前元素
}
printf("\n"); // 换行
}
}
// 功能:填充杨辉三角
void generatePascalTriangle(int triangle[MAX_ROWS][MAX_ROWS], int row) {
if (row == 0 || row == 1) { // 第一行和第一列初始化为1
triangle[row][0] = triangle[0][row] = 1;
} else {
for (int col = 1; col < row; col++) {
triangle[row][col] = triangle[row - 1][col - 1] + triangle[row - 1][col];
}
}
}
int main() {
int triangle[MAX_ROWS][MAX_ROWS]; // 二维数组
int rows = sizeof(triangle) / sizeof(triangle[0]) - 1; // 获取最大行数
// 生成并打印杨辉三角
for (int i = 0; i <= rows; i++) {
generatePascalTriangle(triangle, i);
printPascalTriangle(triangle, i);
}
return 0;
}
```
在这个程序中,`generatePascalTriangle`函数负责计算并填充每个位置的数值,`printPascalTriangle`则用于显示整个三角形。当你运行这个程序,会看到杨辉三角逐行打印出来。
阅读全文