用C语言输出空心的数字金字塔
时间: 2024-10-29 20:10:38 浏览: 9
在C语言中,你可以通过循环结构和条件判断来创建空心数字金字塔。下面是一个简单的示例,用于打印出5层的空心金字塔,其中1代表数字:
```c
#include <stdio.h>
void print_pyramid(int n) {
for (int i = 0; i < n; ++i) {
// 打印外边的空格
for (int j = n - i - 1; j > 0; --j)
printf(" ");
// 打印内层的星号(这里可以用数字或其他字符替换)
for (int k = 0; k <= 2 * i + 1; ++k)
printf("*");
// 每行结束换行
printf("\n");
// 当内层的星号超过一层时,开始打印上半部分的星号
if (i >= 1) {
for (int k = 0; k < 2 * (n - i - 1); ++k)
printf(" ");
// 打印中间的减号或星号,取决于你想表示的是数字还是其他图形
for (int k = 0; k <= 2 * i - 2; ++k)
printf("*");
printf("\n");
}
}
}
int main() {
int pyramid_height = 5;
print_pyramid(pyramid_height);
return 0;
}
```
这个程序会输出一个5层的数字金字塔,类似这样的形状:
```
*
***
*****
*******
```
如果你想让金字塔包含实际的数字,只需将`printf("*")`替换成`printf("%d", i+1)`,然后稍作调整。
阅读全文