本文实例为大家分享了C#实现剪刀石头布游戏的具体代码,供大家参考,具体内容如下 游戏界面如下所示: 首先我们必须知道要创建三个类玩家类,电脑类,裁判类 1、玩家类中的代码
本文实例为大家分享了C#实现剪刀石头布游戏的具体代码,供大家参考,具体内容如下
游戏界面如下所示:
首先我们必须知道要创建三个类玩家类,电脑类,裁判类
1、玩家类中的代码为
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace PlayGame { class Player { public int showFist(string str) { int num = 0; switch (str) { case "剪刀": num = 1; break; case "石头": num = 2; break; case "布": num = 3; break; } return num; } } }
2、电脑类中的代码为
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace PlayGame { class Computer { /// <summary> /// 存储电脑出的拳头 /// </summary> public string fist { get; set; } public int cpuShowFist() { Random r = new Random(); int cnum=r.Next(1,4); switch(cnum) { case 1: this.fist = "剪刀"; break; case 2: this.fist = "石头"; break; case 3: this.fist = "布"; break; } return cnum; } } }
3、裁判类中的代码为
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace PlayGame { class Judge { public enum Result { 电脑赢,玩家赢,平局 } public static Result caipan(int playerNum, int cpuNum) { if ((playerNum - cpuNum) == 1 || (playerNum - cpuNum) == -2) return Result.玩家赢; else if((playerNum-cpuNum)==0) return Result.平局; else return Result.电脑赢; } } }
4、其他的事件代码
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace PlayGame { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void btncut_Click(object sender, EventArgs e) { NewMethod(btncut.Text); } private void NewMethod(string str) { lblPlayer.Text = str; Player player = new Player(); int playerNum = player.showFist(str); Computer cpu = new Computer(); int cpuNum = cpu.cpuShowFist(); lblComputer.Text = cpu.fist; PlayGame.Judge.Result res = Judge.caipan(playerNum, cpuNum); lblJudge.Text = res.ToString(); } private void btnstone_Click(object sender, EventArgs e) { NewMethod(btnstone.Text); } private void btnbu_Click(object sender, EventArgs e) { NewMethod(btnbu.Text); } } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。