用C语言写实验5-11 空心的数字金字塔 题目描述 本题要求实现一个函数,输入一个正整数n(1<=n<=9),输出n行空心的数字金字塔。要求定义和调用函数hollow_pyramid(n)打印出n行空心的数字金字塔。 输入 正整数n(1<=n<=9) 输出 样例查看模式 正常显示 查看格式 输入样例1 <-复制 5 输出样例1 1 2 2 3 3 4 4 555555555
时间: 2023-07-16 18:13:00 浏览: 197
以下是实现空心数字金字塔的C语言代码:
```c
#include <stdio.h>
void hollow_pyramid(int n);
int main()
{
int n;
printf("请输入一个正整数n:");
scanf("%d", &n);
hollow_pyramid(n);
return 0;
}
void hollow_pyramid(int n)
{
int i, j, k, num = 1;
for(i = 1; i <= n; i++)
{
// 打印空格
for(j = n - 1; j >= i; j--)
printf(" ");
// 打印数字
for(k = 1; k <= num; k++)
{
if(k == 1 || k == num || i == n)
printf("%d", i);
else
printf(" ");
}
num += 2;
printf("\n");
}
}
```
代码思路:
首先输入正整数n,然后调用函数`hollow_pyramid(n)`打印出n行空心的数字金字塔。
在函数`hollow_pyramid(n)`中,利用三重循环实现打印空心数字金字塔的功能。
外层循环控制金字塔的行数;
第二层循环控制每一行打印的空格数;
第三层循环控制每一行打印的数字数。
在第三层循环中,如果当前打印的数字是该行的首尾数字,或者当前行是最后一行,就打印数字,否则打印空格。
阅读全文