用c语言输入杨辉三角的前八行
时间: 2023-11-27 19:49:31 浏览: 124
以下是使用C语言编写的输出杨辉三角前8行的代码:
```c
#include <stdio.h>
int main() {
int n = 8; // 前n行
int arr[n][n];
for (int i = 0; i < n; i++) {
for (int j = 0; j <= i; j++) {
if (j == 0 || j == i) {
arr[i][j] = 1;
} else {
arr[i][j] = arr[i-1][j-1] + arr[i-1][j];
}
printf("%d ", arr[i][j]);
}
printf("\n");
}
return 0;
}
```
输出结果如下:
```
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
```
相关问题
用c语言二重循环访问二维数组的方法输入杨辉三角的前八行
下面是用 C 语言二重循环访问二维数组的方法输入杨辉三角的前八行的代码:
```c
#include <stdio.h>
int main()
{
int n = 8;
int i, j;
int triangle[n][n];
// 初始化杨辉三角第一列和对角线
for(i = 0; i < n; i++)
{
triangle[i][0] = 1;
triangle[i][i] = 1;
}
// 计算杨辉三角其他元素
for(i = 2; i < n; i++)
{
for(j = 1; j < i; j++)
{
triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j];
}
}
// 输出杨辉三角前八行
for(i = 0; i < n; i++)
{
for(j = 0; j <= i; j++)
{
printf("%d ", triangle[i][j]);
}
printf("\n");
}
return 0;
}
```
输出结果:
```
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
```
使用c语言生成一份用队列计算并打印杨辉三角前八行的内容的代码
下面是一个使用C语言实现的程序,该程序利用队列来计算并打印杨辉三角形的前8行。这里我们选择数组模拟循环队列的方式来存储每一层的数据。
```c
#include <stdio.h>
#define MAX_SIZE 100
void printYangHuiTriangle(int n) {
int queue[MAX_SIZE]; // 队列用于保存当前行的数据。
int front = -1, rear = -1; // 初始化front和rear表示空队列
// 第一行特殊处理直接放入“1”
queue[++rear] = 1;
for (int line = 1; line <= n; ++line) { // 每一层开始之前先确定有多少项要输出
for (int i = 0; i <= line - 1; ++i){
printf("%d ", queue[(front + 1 + i) % MAX_SIZE]);
}
printf("\n");
// 更新下一行的queue值
for (int j = 0; j < line; ++j){
int prevValue = (front == rear)? 0 : queue[front];
int currValue = queue[(++front)%MAX_SIZE];
queue[++rear%MAX_SIZE] = prevValue + currValue;
}
queue[++rear%MAX_SIZE] = 1; // 当前行最后一个数字始终为"1"
}
}
int main() {
int rows = 8;
printYangHuiTriangle(rows);
return 0;
}
```
上面代码中`printYangHuiTriangle()`函数接收一个参数 `n`, 表示我们要打印多少行的杨辉三角矩阵。它首先把第一行单独处理好之后进入主循环里逐步填充每行元素直到达到目标数目为止。
阅读全文
相关推荐













