运用c语言帮我写一段代码,要求输入n行的杨辉三角,n≥1且≤20
时间: 2024-11-30 13:20:56 浏览: 18
当然可以。以下是使用 C 语言编写的一个简单程序,用于生成并打印指定行数(n)的杨辉三角。用户输入 n 后,程序将输出相应的杨辉三角。
```c
#include <stdio.h>
void printPascalTriangle(int n) {
if (n <= 0) {
printf("Invalid input! n must be greater than 0.\n");
return;
}
for (int line = 1; line <= n; line++) {
// 打印每个数字前的空格
for (int space = n - line; space > 0; space--) {
printf(" ");
}
// 初始化第一个和最后一个数字为1
int number = 1;
// 打印当前行的数字
for (int col = 0; col <= line; col++) {
printf("%d ", number);
number = number * (line - col) / (col + 1);
}
// 换行继续下一行
printf("\n");
}
}
int main() {
int n;
printf("Enter the number of rows for Pascal's Triangle (1-%d): ", 20);
scanf("%d", &n);
// 调用函数打印杨辉三角
printPascalTriangle(n);
return 0;
}
```
在这个程序中,我们定义了一个名为 `printPascalTriangle` 的函数,它接受一个整数参数 `n`,然后根据杨辉三角的规律生成并打印。在 `main` 函数中,用户会被提示输入想要打印的行数。
阅读全文