c#--【简单】猜拳游戏

首先,界面代码

 1 namespace 石头剪刀布
 2 {
 3     public partial class Form1 : Form
 4     {
 5         public Form1()
 6         {
 7             InitializeComponent();
 8         }
 9 
10         private void btnShitou_Click(object sender, EventArgs e)
11         {
12             //将sender强转换为Button类型(Button首字母必须大写,否则会出错)
13             Button btn = (Button)sender;
14             //判断是否为null
15             if (btn != null)
16             { 
17                 //创建玩家对象
18                 wanjia wan = new wanjia();
19                 int w=wan.Showfi(btn.Text);//调用玩家方法
20                 lbwan.Text = wan.fiName;//界面输出
21 
22                 //创建电脑对象
23                 diannao dian = new diannao();
24                 int d=dian.Showfi();//调用电脑方法
25                 lbdian.Text = dian.fiName;//向界面输出的值
26 
27                 //创建裁判对象
28                 caipan c = new caipan();
29                 lkbjie.Text= c.ISuw(w, d);//调用裁判的方法,并传值到界面
30             }
31         }
32     }
33 }
界面代码

玩家类(wanjia)

 1 namespace 石头剪刀布
 2 {
 3     public class wanjia
 4     {
 5         //保存玩家的出拳结果
 6         public string fiName
 7         {
 8             set;
 9             get;
10         }
11         //玩家的出拳方法
12         public int Showfi(string fi)
13         {
14             this.fiName = fi;
15             int s = -1;
16             //根据用户的输入,得到相应的数值
17             switch (fi)
18             { 
19                 case "石头":
20                      s=1;
21                     break ;
22                 case "剪刀":
23                      s=2;
24                     break ;
25                 case "":
26                      s=3;
27                     break ;
28             }
29             return s;
30 
31         }
32     }
33 }
玩家类

电脑类(diannao)

 1 namespace 石头剪刀布
 2 {
 3     public class diannao
 4     {
 5         //保存电脑出拳的结果
 6         public string fiName
 7         {
 8             set;
 9             get;
10         }
11         //计算电脑的出拳
12         public int Showfi()
13         { 
14             //因为电脑是算计出拳,首先要先创建一个随机对象
15             Random random = new Random();
16             //通过随机得到数值,有效取值范围为1、2、3;
17             //1、代表“石头”;2、代表“剪刀”;3、代表“布”
18             int r = random.Next(1,4);
19             //判断随机数
20             switch (r)
21             { 
22                 case 1:
23                     this.fiName = "石头";
24                     break;
25                 case 2:
26                     this.fiName = "剪刀";
27                     break;
28                 case 3:
29                     this.fiName = "";
30                     break;
31             }
32             return r;
33         }
34     }
35 }
电脑类

裁判类(caipan)--规则

 1 namespace 石头剪刀布
 2 {
 3     public class caipan
 4     {
 5         public string ISuw(int w, int d)
 6         {
 7             if (w == d)
 8             { 
 9                 return ("平局!");
10             }
11             else if ((w - d) == -1 || (w - d) == 2)
12             {
13                 return ("赢了!");
14             }
15             else
16             { 
17                 return ("输了!");
18             }
19 
20         }
21     }
22 }
裁判类

 

这个小游戏不太难,主要注意的又一下几点

【注意】:

  1、object sender, EventArgs e

    第一个参数 sender 是指“发生事件”的那个东东(比如Button按钮) ;

    第二个参数 e 是指“事件发生的时附加的参数”

  2、将sender强转换为Button类型(Button首字母必须大写,否则会出错)

    Button btn = (Button)sender;  //sender是对象类型

  3、类的默认修饰符是internal

转载于:https://www.cnblogs.com/pengyouqiang88/p/5119163.html

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值