写一个小车能在区域跑动的c语言代码
时间: 2024-11-13 14:18:14 浏览: 10
在C语言中,我们可以用简单的控制台程序模拟一个小车在指定区域内移动。这里是一个基础示例,使用方向键控制小车向左、右、上或下移动,直到超出预设的区域范围(假设为5x5的网格):
```c
#include <stdio.h>
#include <conio.h> // 包含kbhit和getch用于键盘输入
#define MAX_X 5 // 小车的最大横坐标
#define MAX_Y 5 // 小车的最大纵坐标
#define START_X 2 // 小车初始横坐标
#define START_Y 2 // 小车初始纵坐标
typedef struct {
int x, y; // 小车的位置
} Car;
void move_car(Car* car) {
int dx = {0, 1, 0, -1}; // 左、右、上、下四个方向的偏移量
int dy = {-1, 0, 1, 0}; // 对应的纵坐标偏移量
if (kbhit()) { // 判断是否有按键按下
char key = getch();
switch (key) {
case 'w': car->y += dy; break;
case 's': car->y += dy; break;
case 'a': car->x += dx; break;
case 'd': car->x += dx[1]; break;
}
// 检查是否越界
if (car->x > MAX_X || car->x < 0 || car->y > MAX_Y || car->y < 0) {
printf("小车已到达边界!\n");
car->x = START_X;
car->y = START_Y;
}
}
}
int main() {
Car car = {START_X, START_Y};
printf("欢迎来到5x5区域的小车游戏\n");
while (true) {
move_car(&car);
printf("(%d,%d)\n", car.x, car.y); // 输出小车当前位置
}
return 0;
}
```
阅读全文