如何使用C语言中的函数并利用二维数组来实现杨辉三角的打印,要求该函数不返回任何值?
时间: 2024-12-18 11:18:55 浏览: 4
二维数组编写杨辉三角
5星 · 资源好评率100%
在C语言中,我们可以创建一个函数,接受一个整数作为参数表示行数,然后使用二维数组存储杨辉三角的数值,并在控制台上逐行打印出来。这里提供一个简单的例子:
```c
#include <stdio.h>
// 定义二维数组来存储杨辉三角
#define MAX_ROWS 50
int pascal_triangle[MAX_ROWS][MAX_ROWS];
// 填充二维数组并打印杨辉三角的函数
void print_pascals_triangle(int n) {
// 初始化第一行和第一列
for (int i = 0; i <= n; i++) {
pascal_triangle[0][i] = 1;
if (i > 0)
printf(" %d", 1);
else
printf("%d", 1);
}
printf("\n");
// 从第二行开始填充并打印
for (int i = 1; i < n; i++) {
for (int j = 0; j <= i; j++) {
pascal_triangle[i][j] = pascal_triangle[i - 1][j - 1] + (j == 0 || j == i ? 1 : pascal_triangle[i - 1][j]);
printf("%d ", pascal_triangle[i][j]); // 打印每个元素
}
printf("\n"); // 每行结束后换行
}
}
int main() {
int rows;
printf("Enter the number of rows for Pascal's Triangle: ");
scanf("%d", &rows);
if (rows > MAX_ROWS)
printf("Too many rows requested! Limit is %d.\n", MAX_ROWS);
else
print_pascals_triangle(rows);
return 0;
}
```
这个 `print_pascals_triangle` 函数通过嵌套循环计算和打印二维数组 `pascal_triangle` 中的值,实现了杨辉三角的生成。
阅读全文