打印杨辉三角形c语言
时间: 2024-11-10 19:13:04 浏览: 105
打印杨辉三角形是一种经典的计算机科学问题,它涉及到动态规划和递归的概念。在C语言中,我们可以使用嵌套循环或利用数组来存储每一行的数据,然后逐行输出。以下是使用二维数组来实现的简单示例:
```c
#include <stdio.h>
void printPascalTriangle(int n) {
int triangle[n][n]; // 初始化一个n*n的数组
int num = 1;
// 第一行只有一项
for (int i = 0; i <= n; i++) {
triangle[0][i] = 1;
}
// 输出前两行
for (int i = 1; i <= n; i++) {
// 输出当前行
for (int j = 0; j <= i; j++) {
printf("%d ", triangle[i - 1][j]);
}
printf("\n"); // 换行
// 计算下一行的值,并填充到数组中
for (int k = 0; k < i; k++) {
if (k == 0 || k == i - 1)
triangle[i][k] = num++;
else
triangle[i][k] = triangle[i - 1][k - 1] + triangle[i - 1][k];
}
}
}
int main() {
int rows;
printf("请输入要打印的杨辉三角形的行数: ");
scanf("%d", &rows);
printPascalTriangle(rows);
return 0;
}
```
在这个程序中,用户输入想要打印的三角形行数,然后`printPascalTriangle`函数会按行计算并打印出杨辉三角形。
阅读全文