用 c 语言编写 n 行空心的数字金字塔的代码
时间: 2024-11-20 22:35:39 浏览: 29
在C语言中,你可以使用嵌套循环来创建一个空心的数字金字塔。以下是一个简单的示例,用于打印5行的数字金字塔:
```c
#include <stdio.h>
int main() {
int rows = 5, space_count = rows - 1; // 空格的数量随着行数递减
for (int i = 0; i < rows; i++) { // 遍历每一行
for (int j = 0; j < rows - i - 1; j++) { // 左侧的空格
printf(" "); // 打印空格
}
// 数字中心点
if (i == 0 || i == rows - 1) {
printf("*"); // 边缘的星号
} else {
printf("#"); // 中间的星号
}
for (int k = 1; k <= 2 * i - 1; k++) { // 右侧的星号或空格
printf(" ");
if (k % 2 == 0) { // 如果星号数量为偶数(中间)
printf("*");
}
}
printf("\n"); // 换行
}
return 0;
}
```
这个代码首先初始化了行数 `rows` 和每行的空格数量 `space_count`。然后,外层循环控制行数,内层循环负责输出空格、星号。对于第一行和最后一行,我们直接打印星号;中间的行则交替打印空格和星号。
运行这段代码,你会看到5行的空心数字金字塔,比如:
```
*
***
*****
*******
```
阅读全文