C#怎么实现石头剪刀布游戏
短信预约 -IT技能 免费直播动态提醒
今天小编给大家分享一下C#怎么实现石头剪刀布游戏的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
需要实现如下图所示的人机猜拳小游戏:
我们需要建立一个玩家类Player、一个电脑类Computer、一个裁判类Judge来分别模拟各自的操作:
【Player.cs】
using System;namespace Test2_2{public class Player{ public string FistName { get; set; } public int Play(string name) { FistName = name; switch (FistName) { case "石头": return 1; case "剪刀": return 2; case "布": return 3; default: return 0; } }}}
【Computer.cs】
using System;namespace Test2_2{public class Computer{ public string FistName { get; set; } public int RandomPlay() { Random random = new Random(Guid.NewGuid().GetHashCode()); int num = random.Next(1, 4); switch (num) { case 1: FistName = "石头"; break; case 2: FistName = "剪刀"; break; case 3: FistName = "布"; break; } return num; }}}
【Judge.cs】
using System;namespace Test2_2{public class Judge{ public string Win(int play, int computer) { int result = play - computer; switch (result) { case -1: return "你赢了"; case 2: return "你赢了"; case -2: return "你输了"; case 1: return "你输了"; default: return "平手"; } }}}
【窗体设计】
共有5个标签(3个空标签),三个按钮。
【MainForm.cs】
using System;using System.Windows.Forms;namespace Test2_2{public partial class MainForm : Form{public MainForm(){InitializeComponent();}void Button1Click(object sender, EventArgs e){ Player p = new Player(); int playerName = p.Play(button1.Text); label3.Text = p.FistName; Computer c = new Computer(); int computerName = c.RandomPlay(); label4.Text = c.FistName; Judge judge = new Judge(); label5.Text = judge.Win(playerName, computerName);}void Button2Click(object sender, EventArgs e){ Player p = new Player(); int playerName = p.Play(button2.Text); label3.Text = p.FistName; Computer c = new Computer(); int computerName = c.RandomPlay(); label4.Text = c.FistName; Judge judge = new Judge(); label5.Text = judge.Win(playerName, computerName);}void Button3Click(object sender, EventArgs e){ Player p = new Player(); int playerName = p.Play(button3.Text); label3.Text = p.FistName; Computer c = new Computer(); int computerName = c.RandomPlay(); label4.Text = c.FistName; Judge judge = new Judge(); label5.Text = judge.Win(playerName, computerName);}}}
【Program.cs】
using System;using System.Windows.Forms;namespace Test2_2{internal sealed class Program{[STAThread]private static void Main(string[] args){Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);Application.Run(new MainForm());}}}
【测试结果】
以上就是“C#怎么实现石头剪刀布游戏”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网行业资讯频道。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341