溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

C#怎么實(shí)現(xiàn)石頭剪刀布游戲

發(fā)布時間:2022-05-10 13:42:50 來源:億速云 閱讀:439 作者:zzz 欄目:開發(fā)技術(shù)

今天小編給大家分享一下C#怎么實(shí)現(xiàn)石頭剪刀布游戲的相關(guān)知識點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

需要實(shí)現(xiàn)如下圖所示的人機(jī)猜拳小游戲:

C#怎么實(shí)現(xiàn)石頭剪刀布游戲

我們需要建立一個玩家類Player、一個電腦類Computer、一個裁判類Judge來分別模擬各自的操作:

【Player.cs】

/*
 * 作者:JeronZhou
 * 時間:2021-11-01
 * 功能:石頭剪刀布游戲
 */

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】

/*
 * 作者:JeronZhou
 * 時間:2021-11-01
 * 功能:石頭剪刀布游戲
 */

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】

/*
 * 作者:JeronZhou
 * 時間:2021-11-01
 * 功能:石頭剪刀布游戲
 */

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 "平手";
            }
        }
	}
}

【窗體設(shè)計(jì)】
共有5個標(biāo)簽(3個空標(biāo)簽),三個按鈕。

C#怎么實(shí)現(xiàn)石頭剪刀布游戲

【MainForm.cs】

/*
 * 作者:JeronZhou
 * 時間:2021-11-01
 * 功能:石頭剪刀布游戲
 */

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】

/*
 * 作者:JeronZhou
 * 時間:2021-11-01
 * 功能:石頭剪刀布游戲
 */

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());
		}
	}
}

【測試結(jié)果】

C#怎么實(shí)現(xiàn)石頭剪刀布游戲

C#怎么實(shí)現(xiàn)石頭剪刀布游戲

C#怎么實(shí)現(xiàn)石頭剪刀布游戲

以上就是“C#怎么實(shí)現(xiàn)石頭剪刀布游戲”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學(xué)習(xí)更多的知識,請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI