C语言输入一个整数n,打印n行杨辉三角形。
时间: 2023-10-01 22:04:53 浏览: 249
/*1.编写打印n行杨辉三角形的程序。*/
3星 · 编辑精心推荐
好的,这是一个经典的编程题。下面是使用C语言编写的打印n行杨辉三角形的代码:
```
#include <stdio.h>
// 计算杨辉三角中第i行第j列的数值
int calc(int i, int j)
{
if (j == 1 || j == i) {
return 1;
} else {
return calc(i-1, j-1) + calc(i-1, j);
}
}
int main()
{
int n;
printf("请输入要打印的杨辉三角的行数:\n");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= i; j++) {
printf("%d ", calc(i, j));
}
printf("\n");
}
return 0;
}
```
需要注意的是,在本程序中使用了递归算法来计算杨辉三角中的数值,可能对于非常大的行数会导致性能问题。因此,如果需要处理大型杨辉三角,建议使用非递归算法,可以参考其他相关资料进行优化。
阅读全文