21xrx.com
2024-09-19 09:38:03 Thursday
登录
文章检索 我的文章 写文章
石头剪刀布 C++ 代码示例
2023-07-05 12:02:17 深夜i     --     --
石头剪刀布 C++ 代码示例 游戏 随机数

石头剪刀布是一种非常简单且有趣的游戏,也是许多人小时候玩的传统游戏。现在,我们可以用 C++ 语言来编写一个可以玩石头剪刀布的游戏程序。

首先,我们需要使用 C++ 的随机数生成器来生成计算机随机选择的手势,同时也需要用户自己输入手势来与计算机进行对战。

以下是一个示例代码,其中包含了手势的选择、判断胜负以及游戏结束的逻辑。


#include <iostream>

#include <cstdlib>

#include <ctime>

using namespace std;

int main() {

  char userGesture, computerGesture;

  int computerChoice;

  bool isValidInput = false;

  srand(time(NULL));

  cout << "Welcome to the rock-paper-scissors game!\n";

  cout << "Please enter your choice (R for rock, P for paper, S for scissors):\n";

  cin >> userGesture;

  switch(userGesture) {

    case 'R':

    case 'r':

      computerChoice = rand() % 3;

      computerGesture = computerChoice == 0 ? 'R' : (computerChoice == 1 ? 'P' : 'S');

      cout << "You chose rock, and computer chose " << computerGesture << ".\n";

      if(computerGesture == 'R') {

        cout << "It's a tie!\n";

      } else if(computerGesture == 'P') {

        cout << "Computer wins!\n";

      } else {

        cout << "You win!\n";

      }

      break;

    case 'P':

    case 'p':

      computerChoice = rand() % 3;

      computerGesture = computerChoice == 0 ? 'R' : (computerChoice == 1 ? 'P' : 'S');

      cout << "You chose paper, and computer chose " << computerGesture << ".\n";

      if(computerGesture == 'P') {

        cout << "It's a tie!\n";

      } else if(computerGesture == 'S') {

        cout << "Computer wins!\n";

      } else {

        cout << "You win!\n";

      }

      break;

    case 'S':

    case 's':

      computerChoice = rand() % 3;

      computerGesture = computerChoice == 0 ? 'R' : (computerChoice == 1 ? 'P' : 'S');

      cout << "You chose scissors, and computer chose " << computerGesture << ".\n";

      if(computerGesture == 'S') {

        cout << "It's a tie!\n";

      } else if(computerGesture == 'R') {

        cout << "Computer wins!\n";

      } else {

        cout << "You win!\n";

      }

      break;

    default:

      cout << "Invalid input. Please only enter R, P, or S.\n";

      isValidInput = true;

      break;

  }

  if(!isValidInput) {

    cout << "Game over!\n";

  }

  return 0;

}

在这个示例代码中,我们首先定义了两个变量:用户选择的手势和计算机选择的手势。然后,我们使用了一个 `switch`语句来根据用户输入的手势进行判断。

对于每种手势,我们都使用 `rand()`函数来生成一个 0 至 2 之间的随机数,并根据这个数来选择计算机的手势。然后,我们将用户和计算机选择的手势进行比较,判断胜负关系,并输出相应的结果。

最后,我们进行了额外的判断,以确保用户输入的手势正确,最后输出游戏结束的信息。

总的来说,这个示例代码很简单,并且很容易理解。通过这个代码,我们可以编写出一个可以玩石头剪刀布的游戏程序,让我们在工作或学习之余可以轻松放松一下,享受游戏的乐趣。

  
  

评论区

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