用c语言打印出以下杨辉三角形(要求打印10行)。 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 ……
时间: 2023-12-29 21:05:06 浏览: 92
好的,以下是用C语言打印出10行杨辉三角形的代码:
```
#include <stdio.h>
int main() {
int numRows = 10;
int triangle[numRows][numRows];
for (int i = 0; i < numRows; i++) {
for (int j = 0; j <= i; j++) {
if (j == 0 || j == i) {
triangle[i][j] = 1;
} else {
triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][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
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
```
希望能够帮到你!
相关问题
用C语言输出以下的杨辉三角形(要求输出10行) 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 …………………………
在C语言中,你可以使用动态内存分配和两层嵌套循环来生成并输出杨辉三角。下面是一个简单的示例程序:
```c
#include <stdio.h>
#include <stdlib.h>
// 功能:计算给定位置的杨辉三角值
int get_pascal_triangle(int row, int col) {
if (col == 0 || col == row) {
return 1;
} else {
return get_pascal_triangle(row - 1, col - 1) + get_pascal_triangle(row - 1, col);
}
}
int main() {
int rows = 10; // 设置输出10行
int i, j;
// 动态创建二维数组
int** triangle = (int**)malloc(rows * sizeof(int*));
for (i = 0; i < rows; i++) {
triangle[i] = (int*)malloc((i + 1) * sizeof(int)); // 每行有i+1个元素
}
// 计算并输出每个位置的值
for (i = 0; i < rows; i++) {
for (j = 0; j <= i; j++) {
triangle[i][j] = get_pascal_triangle(i, j);
printf("%d ", triangle[i][j]);
}
printf("\n");
}
// 清理内存
for (i = 0; i < rows; i++) {
free(triangle[i]);
}
free(triangle);
return 0;
}
```
这个程序首先动态地为每一行创建一个数组,然后通过递归计算每个位置的杨辉三角数值,并将其打印出来。注意最后记得释放动态分配的内存。
C语言输出以下的杨辉三角形(要求输出10行): 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 ……
以下是 C 语言的代码,可以输出 10 行杨辉三角形:
```
#include <stdio.h>
int main() {
int n = 10;
int arr[10][10];
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;
}
```
阅读全文
相关推荐













