Winform实现石头剪刀布小游戏
1、电脑玩家类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace RockScissorsClothApp
{public class Computer{public Card Play(){Random random = new Random();int num = random.Next(0, 3);switch (num){case 0:return Card.Rock;case 1:return Card.Scissors;default:return Card.CLoth;}}public static string ToString(Card c){return c.ToString();}}public enum Card{Rock,Scissors,CLoth}
}
2、玩家类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace RockScissorsClothApp
{public class Player{public Card Play(string name){switch (name){case "石头":return Card.Rock;case "剪刀":return Card.Scissors;case "布":default:return Card.CLoth;}}}
}
3、裁判类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace RockScissorsClothApp
{public class Referee{public static Result Judge(Card c1, Card c2){int dif = c1 - c2;switch (dif){case 0:return Result.Draw;case -1:case 2:return Result.lost;case -2:case 1:default:return Result.Win;}}public static string ToString(Result c){return c.ToString();}}public enum Result{Win,lost,Draw}
}
4、应用程序
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;namespace RockScissorsClothApp
{public partial class Form1 : Form{public Form1(){InitializeComponent();}private void BtnRock_Click(object sender, EventArgs e){Button button = sender as Button;if (button != null){Computer computer = new Computer();Card c1 = computer.Play();lblComputerCard.Text = Computer.ToString(c1);string str = button.Text;Player player = new Player();Card c2 = player.Play(str);lblPlayerCard.Text = Computer.ToString(c2);Result result = Referee.Judge(c1, c2);lblRefereeResult.Text = result.ToString();}}}
}
5、运行效果
裁判结果为玩家的输赢。