在编程学习中,杨辉三角是一个经典的例子,它可以帮助我们理解循环结构和数组的使用。杨辉三角形,又称帕斯卡三角形,是一组排列成三角形的数列,其特点是从顶部开始,每一行的数字是上一行相邻两数之和。
下面,我们将用C语言编写一个程序来输出杨辉三角形。这个程序将通过二维数组来存储每一行的数据,并利用双重循环来计算每个位置的值。
```c
include
void printPascalTriangle(int n) {
int pascal[n][n];
// 初始化数组
for (int line = 0; line < n; line++) {
for (int i = 0; i <= line; i++) {
if (line == i || i == 0)
pascal[line][i] = 1;
else
pascal[line][i] = pascal[line - 1][i - 1] + pascal[line - 1][i];
}
}
// 打印杨辉三角
for (int line = 0; line < n; line++) {
for (int i = 0; i <= line; i++) {
printf("%d ", pascal[line][i]);
}
printf("\n");
}
}
int main() {
int rows;
printf("请输入杨辉三角的行数: ");
scanf("%d", &rows);
printPascalTriangle(rows);
return 0;
}
```
程序说明:
1. 初始化:首先定义一个二维数组`pascal`来存储杨辉三角的值。
2. 填充数组:通过双重循环来填充这个数组。对于每一行,如果当前位置是该行的第一个或最后一个元素,则其值为1;否则,它的值等于上一行同列和前一列元素之和。
3. 打印结果:最后,再次使用双重循环来打印出三角形的每一行。
这段代码简单明了,适合初学者理解和实践。通过调整`rows`变量,你可以控制输出的杨辉三角的大小。希望这个示例能帮助你更好地掌握C语言中的循环和数组操作。