21xrx.com
2024-11-22 06:51:20 Friday
登录
文章检索 我的文章 写文章
C++实现剪刀石头布游戏代码
2023-07-08 18:34:00 深夜i     --     --
C++ 剪刀石头布 游戏 代码 实现

剪刀石头布是一款非常经典的游戏,许多人在日常生活中也喜欢玩这个游戏。那么,在这篇文章中,我们来说一下如何使用C++来实现剪刀石头布游戏代码。

首先,我们需要明确游戏的规则。剪刀可以剪石头,石头可以砸剪刀,剪刀和剪刀、石头和石头、布和布互不相胜。接下来,我们需要定义游戏中的三种不同的选择,即剪刀、石头和布,可以使用枚举类型来实现。


enum Choice SCISSORS

;

接着,我们需要编写一个函数来实现游戏的主逻辑。该函数需要从计算机和玩家中随机选择一种选项,并根据上文提到的规则判断哪种选项胜出。判断完胜负后,再将结果输出到屏幕上。


void playGame() {

  srand(time(NULL));

  Choice computer_choice = static_cast<Choice>(rand() % 3);

  Choice player_choice;

  int x;

  cout << "请输入你的选择(剪刀 - 0,石头 - 1,布 - 2):" << endl;

  cin >> x;

  player_choice = static_cast<Choice>(x);

  if (computer_choice == player_choice)

    cout << "平局!" << endl;

   else if ((computer_choice == ROCK && player_choice == SCISSORS) ||

        (computer_choice == PAPER && player_choice == ROCK) ||

        (computer_choice == SCISSORS && player_choice == PAPER))

    cout << "你输了!" << endl;

   else

    cout << "你赢了!" << endl;

  

}

最后,我们可以在主函数中不断调用playGame()函数来进行多轮游戏。完整代码如下:


#include <iostream>

#include <cstdlib>

#include <ctime>

using namespace std;

enum Choice

  ROCK;

void playGame() {

  srand(time(NULL));

  Choice computer_choice = static_cast<Choice>(rand() % 3);

  Choice player_choice;

  int x;

  cout << "请输入你的选择(剪刀 - 0,石头 - 1,布 - 2):" << endl;

  cin >> x;

  player_choice = static_cast<Choice>(x);

  if (computer_choice == player_choice)

    cout << "平局!" << endl;

   else if ((computer_choice == ROCK && player_choice == SCISSORS) ||

        (computer_choice == PAPER && player_choice == ROCK) ||

        (computer_choice == SCISSORS && player_choice == PAPER))

    cout << "你输了!" << endl;

   else

    cout << "你赢了!" << endl;

  

}

int main() {

  while (true) {

    playGame();

    cout << "是否继续游戏?(是 - y,否 - n):" << endl;

    char c;

    cin >> c;

    if (c == 'n')

      break;

    

  }

  return 0;

}

以上就是使用C++实现剪刀石头布游戏代码的方法,大家可以尝试在自己的电脑上编译并运行这段代码,亲身体验这个有趣的游戏!

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复