c语言沙漏怎么编程的

时间:2025-01-23 14:00:57 游戏攻略

在C语言中,打印沙漏形状可以通过控制循环和条件语句来实现。以下是一个简单的示例代码,用于打印出一个旋转的沙漏形状:

```c

include

int main() {

int n;

char c;

printf("请输入一个正整数:");

scanf("%d %c", &n, &c);

// 打印上半部分

for (int i = 1; i <= n / 2; i++) {

// 打印空格

for (int j = 1; j <= n / 2 - i; j++) {

printf(" ");

}

// 打印星号

for (int j = 1; j <= 2 * i - 1; j++) {

printf("%c", c);

}

printf("\n");

}

// 打印下半部分

for (int i = n / 2; i >= 1; i--) {

// 打印空格

for (int j = 1; j <= n / 2 - i; j++) {

printf(" ");

}

// 打印星号

for (int j = 1; j <= 2 * i - 1; j++) {

printf("%c", c);

}

printf("\n");

}

return 0;

}

```

代码解释:

输入部分

提示用户输入一个正整数 `n` 和一个字符 `c`,用于指定沙漏的形状。

打印上半部分

使用两个嵌套的 `for` 循环来打印空格和星号。

外层循环控制行数,内层循环分别打印空格和星号。

打印下半部分

与上半部分类似,但行数从 `n / 2` 开始递减到 1。

示例输出:

如果输入 `n = 5` 和 `c = '*'`,输出将会是:

```

*

*

*

*

*

*

*

*

*

```

这个代码可以根据用户输入的 `n` 和 `c` 打印出相应的沙漏形状。你可以根据需要修改和扩展这个代码。