利用二维数组实现杨辉三角的输出,写出c语言的代码
时间: 2024-12-18 11:15:34 浏览: 13
TS2ES,c语言杨辉三角用二维数组源码,c语言程序
杨辉三角是一种常见的数学图形,它是一个二阶动态规划问题,常用于组合数学和算法分析中。在C语言中,我们可以使用嵌套循环来构建并打印杨辉三角。这是一个简单的例子:
```c
#include <stdio.h>
// 定义二维数组存储杨辉三角
int pascal_triangle[][100] = { {1} };
// 函数用于递归生成杨辉三角
void generate(int row) {
if (row > 0) {
// 初始化当前行的第一个和最后一个元素为1
pascal_triangle[row][0] = 1;
pascal_triangle[row][row - 1] = 1;
// 中间元素由上一行的相邻元素相乘然后除以当前行减一得到
for (int i = 1; i < row - 1; i++) {
pascal_triangle[row][i] = pascal_triangle[row - 1][i - 1] + pascal_triangle[row - 1][i];
}
// 输出当前行
for (int i = 0; i <= row; i++) {
printf("%d ", pascal_triangle[row][i]);
}
printf("\n");
// 递归生成下一行
generate(row - 1);
}
}
int main() {
int rows = 5; // 想要打印的行数
generate(rows); // 开始生成杨辉三角
return 0;
}
阅读全文