用c语言编程,输出指定行数的杨辉三角。输入格式: 6 输出格式: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1
时间: 2024-06-18 13:02:17 浏览: 43
以下是用 C 语言编写输出指定行数的杨辉三角的代码:
```
#include <stdio.h>
int main()
{
int n, i, j, c=1;
printf("请输入杨辉三角的行数:");
scanf("%d",&n);
for(i=0; i<n; i++)
{
for(j=0; j<=i; j++)
{
if (j==0 || i==0)
c = 1;
else
c = c*(i-j+1)/j;
printf("%d ",c);
}
printf("\n");
}
return 0;
}
```
相关问题
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"
以下是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,继续循环打印下一行。
用c语言编程 题目描述 杨辉三角数字的特点为: (1)在三角形的首列和对角线上,数值均为 1; (2)其余数据为:每个数字等于上一行的左右两个数字之和,第 n+1 行的第 i 个数等于 第 n 行的第 i-1 个数和第 i 个数之和,用公式表示为: C(n+1,i)=C(n,i)+C(n,i-1)。 图示为: 输入格式: 输入杨辉三角的行数 n(1<=n<=13)。 输出格式: 每个数值占据 6 个字符的位置,数值右对齐,数值不足 6 位的左边补空格。 输入样例: 9 输出样例: 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 1 7 21 35 35 21 7 1 1 8 28 56 70 56 28 8 1
下面是一个用 C 语言实现输出杨辉三角形的代码:
```c
#include <stdio.h>
int main()
{
int n;
scanf("%d", &n);
int a[14][14] = {0}; // 数组初始化为 0
for (int i = 1; i <= n; i++) {
a[i][1] = a[i][i] = 1; // 首列和对角线上的数值均为 1
for (int j = 2; j < i; j++) {
a[i][j] = a[i-1][j] + a[i-1][j-1]; // 按照公式计算其余数值
}
}
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= i; j++) {
printf("%6d", a[i][j]); // 输出每个数值,占据 6 个字符的位置,数值右对齐,数值不足 6 位的左边补空格
}
printf("\n"); // 换行
}
return 0;
}
```
代码中,首先输入杨辉三角的行数 n,然后定义一个二维数组 a,用来存储杨辉三角形中的数值。数组初始化为 0。接着,按照杨辉三角形的特点,分别处理首列和对角线上的数值,以及其余数值。最后,按照要求输出每个数值。
阅读全文