C语言 杨辉三角形 编程打印具有如下形式的杨辉三角形(它的特点是左右两边全是1,从第二行起,中间的每一个数是上一行里相邻两个数之和),其中输出数据的行数n从键盘输入,并且n<=10。 程序运行结果示例1: input n (n<=10): 5↙ 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 程序运行结果示例2: input n (n<=10): 7↙ 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 输入格式: "%d" 输出格式: 输入提示信息:"input n (n<=10):\n" 输出数据格式:"%4d" 数据换行: "\n"
时间: 2024-02-24 15:56:24 浏览: 107
以下是C语言实现的代码:
```c
#include <stdio.h>
int main() {
int n, i, j;
int row[11] = {1}; // 初始化第一行,其余为0
printf("input n (n<=10):\n");
scanf("%d", &n);
for (i = 0; i < n; i++) {
// 打印当前行
for (j = 0; j < i+1; j++) {
printf("%4d", row[j]);
}
printf("\n");
// 计算下一行
int next_row[11] = {1};
for (j = 1; j < i+1; j++) {
next_row[j] = row[j-1] + row[j];
}
for (j = 0; j < i+1; j++) {
row[j] = next_row[j];
}
}
return 0;
}
```
首先读入 n,然后初始化第一行为 [1],其余为 0。之后,使用两个嵌套的循环打印杨辉三角形。外层循环控制行数,内层循环控制每一行的数字。打印每个数字时,使用 printf 函数来控制输出格式。内层循环结束后,计算下一行的数字并将其保存在 next_row 中。最后,将 next_row 的每个元素赋值给 row,继续循环打印下一行。
阅读全文
相关推荐
















