21xrx.com
2024-12-22 21:57:35 Sunday
登录
文章检索 我的文章 写文章
C++小游戏编程:石头剪刀布
2023-07-06 19:53:18 深夜i     --     --
C++ 小游戏 编程 石头剪刀布 游戏设计

石头剪刀布是一款非常简单又有趣的游戏,几乎让人们在任何时间和地点都可以玩。如果你爱玩石头剪刀布,为什么不尝试一下使用C++语言编写自己的石头剪刀布游戏呢?

在开始编写代码之前,我们需要考虑游戏的逻辑。这个游戏的逻辑很简单。玩家和计算机会同时出拳,如果玩家和计算机出拳的结果一样,这一轮结束并重新开始游戏;如果出拳的结果不一致,则此回合结束,游戏获胜者是本回合获胜的一方。剪刀击败纸,纸击败石头,石头击败剪刀。

代码实现起来也很简单。首先,我们需要引入一个随机数生成器来模拟计算机的出拳行为。其次,我们需要设置一个循环,以便玩家可以持续玩游戏。在每个循环中,我们需要从玩家那里输入出拳的答案,然后使用随机数生成器模拟计算机的出拳行为,比较结果并输出胜利者。

以下是一个简单的实现:


#include <iostream>

#include <ctime>

using namespace std;

// 随机数生成器

int getRandomNumber()

{

  srand(time(nullptr));

  return rand() % 3; // 0代表石头,1代表剪刀,2代表布

}

int main()

{

  char playerAnswer; // 玩家出拳

  int computerAnswer; // 计算机出拳

  bool quit = false; // 是否退出游戏

  while (!quit)

  {

    cout << "请出拳(r代表石头,s代表剪刀,p代表布,q代表结束游戏):" << endl;

    cin >> playerAnswer;

    switch (playerAnswer)

    请重新输入。" << endl;

      continue;

    

    computerAnswer = getRandomNumber();

    if (playerAnswer == 'r' && computerAnswer == 0 ||

      playerAnswer == 's' && computerAnswer == 1 ||

      playerAnswer == 'p' && computerAnswer == 2)

    

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

    

    else if (playerAnswer == 'r' && computerAnswer == 1 ||

         playerAnswer == 's' && computerAnswer == 2 ||

         playerAnswer == 'p' && computerAnswer == 0)

    

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

    

    else

    

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

    

  }

  return 0;

}

在代码结束之后,你就可以在命令行终端上看到自己的石头剪刀布游戏的运行了。现在你已经掌握了如何使用C++语言编写一个简单的游戏,为什么不尝试一下加入更多的功能和特效?祝你好运!

  
  

评论区

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