用C语言解决读入一个整数n。 1≤n≤20 输出n行杨辉三角,格式参照下面的样例 每行数字以空格隔开,每个数字后都有一个空格
时间: 2024-10-29 09:25:16 浏览: 32
在C语言中,你可以通过嵌套循环来解决这个问题。首先需要包含头文件`stdio.h`以便使用输入输出功能。这里是一个简单的函数示例,用于打印指定范围内的杨辉三角:
```c
#include <stdio.h>
void printPascalTriangle(int n) {
// 初始化前两行的值
int triangle[n][n];
for (int i = 0; i <= n; ++i) {
// 第一行只有一个元素
if (i == 0 || i == 1)
triangle[i][0] = triangle[i][i] = 1;
else {
// 计算其余元素,公式为 C(i-1, k-1) + C(i-1, k)
for (int j = 1; j < i; ++j)
triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j];
}
// 输出当前行
printf("%d ", triangle[i][0]);
for (int k = 1; k < i; ++k)
printf("%d ", triangle[i][k]);
printf("%d\n", triangle[i][i]); // 每行末尾添加换行符
}
}
int main() {
int n;
printf("请输入一个1到20之间的整数:");
scanf("%d", &n);
// 检查输入是否在范围内
if (n >= 1 && n <= 20) {
printPascalTriangle(n);
} else {
printf("输入错误,n应满足1≤n≤20。\n");
}
return 0;
}
```
当你运行这个程序并输入一个1到20之间的整数时,它会输出对应的杨辉三角。
阅读全文