c语言做一个会动的猫
时间: 2024-10-10 09:09:07 浏览: 44
在C语言中制作一个简单的会"动"的猫程序,通常是指通过控制字符的输出来模拟猫的动作。由于C语言本身不具备图形界面,我们通常是利用终端或者命令行环境下的动画效果。这里提供一个基础的文本模式下模拟猫左右移动的例子:
```c
#include <stdio.h>
#include <unistd.h> // for sleep function
// 定义猫的位置
enum {LEFT = 0, RIGHT} direction;
int cat_position = 5; // 猫初始位置在第6列(0为左端)
void move_cat(char direction) {
printf("\r%-*s", cat_position, " ");
cat_position += direction == LEFT ? -1 : 1;
if (cat_position <= 0 || cat_position >= 80) { // 限制在80列宽的范围内
direction = direction == LEFT ? RIGHT : LEFT;
}
usleep(100000); // 暂停一段时间模拟移动
}
int main() {
while (true) {
move_cat(direction);
switch ((char)getch()) { // 捕获键盘输入
case 'a': // 左移
direction = LEFT;
break;
case 'd': // 右移
direction = RIGHT;
break;
default:
printf("Invalid input. Cat is staying.\n");
break;
}
}
return 0;
}
```
在这个程序中,我们使用`printf`和`\r`来清除当前行并移动猫的位置,然后暂停一会儿让"猫"看起来在移动。用户可以通过输入'a'和'd'来控制猫的左右移动。
注意:这个例子假设终端屏幕宽度足够大(至少80列),并且你的系统支持`getch()`函数从标准输入获取字符。在实际编写时,你可能需要根据实际情况调整猫的移动范围和其他细节。
阅读全文