21xrx.com
2025-03-29 17:27:40 Saturday
文章检索 我的文章 写文章
C++编写 石头剪刀布 游戏程序代码
2023-07-05 12:37:43 深夜i     6     0
C++ 石头剪刀布游戏 程序代码

石头剪刀布是一款经典的游戏,我们可以使用C++编写一个简单的程序来实现这个游戏。这个程序可以帮助我们学习和巩固C++编程语言的基础知识。下面是一份可以运行的代码,大家可以进行参考和实践。

代码:


#include<iostream>

#include<ctime>

#include<cstdlib>

using namespace std;

int main()

{

  int playerChoice, computerChoice, result;

  //playerChoice表示玩家的选择,computerChoice表示电脑的选择,result表示比赛结果

  //1表示玩家胜利,0表示平局,-1表示电脑胜利

  srand(time(NULL)); //使用当前时间作为随机数种子

  cout << "欢迎来到石头剪刀布游戏!\n";

  cout << "请出拳:\n";

  cout << "1. 石头\n";

  cout << "2. 剪刀\n";

  cout << "3. 布\n";

  cout << "请输入数字:";

  cin >> playerChoice;

  computerChoice = rand() % 3 + 1;

  if(playerChoice == 1) //玩家出石头

  {

    if(computerChoice == 1) result = 0; //电脑也出石头,平局

    if(computerChoice == 2) result = 1; //电脑出剪刀,玩家胜利

    if(computerChoice == 3) result = -1; //电脑出布,电脑胜利

  }

  else if(playerChoice == 2) //玩家出剪刀

  {

    if(computerChoice == 1) result = -1; //电脑出石头,电脑胜利

    if(computerChoice == 2) result = 0; //电脑也出剪刀,平局

    if(computerChoice == 3) result = 1; //电脑出布,玩家胜利

  }

  else if(playerChoice == 3) //玩家出布

  {

    if(computerChoice == 1) result = 1; //电脑出石头,玩家胜利

    if(computerChoice == 2) result = -1; //电脑出剪刀,电脑胜利

    if(computerChoice == 3) result = 0; //电脑也出布,平局

  }

  if(result == 1) cout << "恭喜你,你赢了!\n";

  if(result == 0) cout << "平局!\n";

  if(result == -1) cout << "很遗憾,你输了!\n";

  return 0;

}

在这个程序中,我们使用了rand()函数来生成随机数,这个函数可以生成0~RAND_MAX(一个常量)之间的整数值。通过使用时间作为函数的参数,我们可以让每次运行程序时生成的随机数序列不同,从而增加了游戏的趣味性。

在用户输入出拳内容后,我们使用if语句嵌套来判断胜负。这里需要注意的是,如果使用多个if语句来判断胜负,可能会导致程序性能低下,因此我们推荐使用switch语句,或者使用数组来简化代码。

总之,这个程序只是一个简单的例子,大家可以对代码进行改进,加入更多的功能和逻辑,让游戏变得更加丰富和有趣。同时,我们还可以通过学习C++的其他语法和算法,来开发更加复杂和实用的程序。

  
  

评论区