编写函数fun,要求从终端输入一个整数并打印出对应层数的金字塔 c语言 只有外面有星号
时间: 2024-04-08 21:34:46 浏览: 92
以下是使用C语言编写的函数fun,实现了从终端输入一个整数并打印出对应层数的金字塔,只有外面有星号的要求:
```c
#include <stdio.h>
void fun(int n) {
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= i; j++) {
if (j == 1 || j == i || i == n)
printf("* ");
else
printf(" ");
}
printf("\n");
}
}
int main() {
int num;
printf("Enter the number of layers: ");
scanf("%d", &num);
fun(num);
return 0;
}
```
在上述代码中,我们定义了一个函数`fun`,它接受一个整数参数`n`,表示金字塔的层数。函数内部使用两层嵌套循环来打印金字塔的每一行。
外层循环控制金字塔的层数,从1到n。内层循环控制每一行的打印内容。在每一行中,我们判断当前位置是否是金字塔的外边界或顶部,如果是,则打印星号(`*`),否则打印空格(` `)。通过这种方式,我们只在金字塔的外面打印星号。
在`main`函数中,我们从用户输入获取一个整数作为金字塔的层数,并调用`fun`函数打印出金字塔。
例如,如果用户输入5,则打印出如下的金字塔:
```
*
* *
* *
* *
* * * * *
```
阅读全文