别踩白块儿c++语言代码
时间: 2023-11-12 22:58:10 浏览: 79
好的,这是一个简单的别踩白块儿游戏的C++代码:
```c++
#include <iostream>
#include <conio.h>
#include <windows.h>
using namespace std;
const int width = 20;
const int height = 5;
int x = width / 2, y = height - 1;
int score = 0;
bool gameover = false;
char board[height][width];
void draw_board() {
for (int i = 0; i < height; i++) {
for (int j = 0; j < width; j++) {
if (i == y && j == x) cout << "O"; else if (board[i][j] == '#') cout << "#";
else cout << " ";
}
cout << endl;
}
cout << "Score: " << score << endl;
}
void update_board() {
for (int i = height - 1; i > 0; i--) {
for (int j = 0; j < width; j++) {
board[i][j] = board[i - 1][j];
}
}
int rand_num = rand() % width;
for (int j = 0; j < width; j++) {
if (j == rand_num) board[0][j] = '#';
else board[0][j] = ' ';
}
}
void input() {
if (_kbhit()) {
switch (_getch()) {
case 'a':
x--;
break;
case 'd':
x++;
break;
case 'q':
gameover = true;
break;
}
}
}
void check_gameover() {
if (board[y][x] == '#') gameover = true;
}
int main() {
srand(time(NULL));
while (!gameover) {
draw_board();
update_board();
input();
check_gameover();
score++;
Sleep(100);
system("cls");
}
cout << "Game Over!" << endl;
cout << "Your score is: " << score << endl;
return 0;
}
```
阅读全文