c++1000行代码小游戏
时间: 2023-10-18 07:59:43 浏览: 51
以下是一个基于 C++ 的简单小游戏示例,大约有1000行代码:
```cpp
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
class Player {
private:
string name;
int score;
public:
Player(string n) {
name = n;
score = 0;
}
void increaseScore() {
score++;
}
int getScore() {
return score;
}
string getName() {
return name;
}
};
class Game {
private:
Player* player;
int target;
public:
Game(string playerName) {
player = new Player(playerName);
target = 10;
}
void play() {
cout << "=== 猜数字游戏 ===" << endl;
cout << "游戏规则:猜测一个在1到100之间的数字,看你能猜对几次!" << endl;
srand(time(0));
while (true) {
int guess;
cout << "请输入你的猜测(1-100):";
cin >> guess;
if (guess < 1 || guess > 100) {
cout << "无效的猜测!请输入1到100之间的数字。" << endl;
continue;
}
int randomNumber = rand() % 100 + 1;
cout << "随机数字是:" << randomNumber << endl;
if (guess == randomNumber) {
player->increaseScore();
cout << "恭喜!你猜对了!" << endl;
} else {
cout << "很遗憾,你猜错了!" << endl;
}
cout << "你的分数是:" << player->getScore() << endl;
if (player->getScore() == target) {
cout << "恭喜你达到目标分数!游戏结束。" << endl;
break;
}
char playAgain;
cout << "是否继续游戏?(Y/N):";
cin >> playAgain;
if (playAgain != 'Y' && playAgain != 'y') {
cout << "游戏结束。" << endl;
break;
}
}
}
~Game() {
delete player;
}
};
int main() {
string playerName;
cout << "请输入你的名字:";
cin >> playerName;
Game game(playerName);
game.play();
return 0;
}
```
这个示例是一个猜数字游戏,玩家需要猜测一个在1到100之间的随机数字。玩家每次猜对加一分,猜错不加分。游戏目标是达到10分。玩家可以选择继续游戏或结束游戏。
请注意,这只是一个简单的示例代码,实际游戏中可能需要更多的功能和交互设计。你可以根据自己的需求进行进一步的修改和扩展。