用c语言写一个赛车游戏代码
时间: 2024-01-27 13:05:35 浏览: 132
好的,以下是一个简单的赛车游戏的 C 语言代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
#define WIDTH 60
#define HEIGHT 20
int main() {
int car_x = WIDTH / 2 - 1;
int car_y = HEIGHT - 1;
int obstacle_x, obstacle_y, score = 0;
char obstacle = '|';
char car = 'O';
int is_game_over = 0;
srand(time(0));
while (!is_game_over) {
system("cls"); // 清空屏幕
// 随机生成障碍物
obstacle_x = rand() % WIDTH;
obstacle_y = rand() % (HEIGHT - 5);
// 绘制障碍物和车
for (int i = 0; i < HEIGHT; i++) {
for (int j = 0; j < WIDTH; j++) {
if (i == obstacle_y && j == obstacle_x) {
printf("%c", obstacle);
} else if (i == car_y && j >= car_x && j < car_x + 3) {
printf("%c", car);
} else {
printf(" ");
}
}
printf("\n");
}
// 按键检测
if (_kbhit()) {
char key = _getch();
if (key == 'a' && car_x > 0) {
car_x--;
} else if (key == 'd' && car_x < WIDTH - 3) {
car_x++;
} else if (key == 'q') {
is_game_over = 1;
}
}
// 判断是否碰撞
if (obstacle_y == car_y - 1 && obstacle_x >= car_x && obstacle_x < car_x + 3) {
is_game_over = 1;
}
// 更新分数
score++;
printf("Score: %d\n", score);
// 延迟
for (int i = 0; i < 10000000; i++);
}
printf("Game Over! Your score is %d\n", score);
return 0;
}
```
这是一个控制台赛车游戏,玩家使用键盘左右键控制车辆躲避障碍物。游戏会随机生成障碍物,并在屏幕上绘制出来。如果车辆与障碍物碰撞,则游戏结束,显示玩家的得分。
阅读全文