本文实例为大家分享了Winform上实现石头剪刀布游戏的具体代码,供大家参考,具体内容如下
新建一个windows窗体程序,用数字1代表石头,用数字2代表剪刀,用数字3代表布,结果取玩家和电脑出拳之差,有三种结果
玩家赢:1、2
平手:0
玩家输:其它值
新建3个类:,
1)电脑。cs电脑随机出拳
使用系统; 使用System.Collections.Generic; 使用来; 使用text; 使用System.Threading.Tasks; 名称空间石头剪刀布 { 类计算机 { 公共字符串的拳头 { 得到; 设置; } 公共int ShowFist () { 随机rnd=new随机(); int拳头=研发。下(1,4); 开关(拳头) { 案例1:拳头="石头”;打破; 案例2:拳头="剪刀”;打破; 案例3:拳头="布";打破; } 返回的拳头; } } } >之前2),法官。cs裁判类判断输赢,
使用系统; 使用System.Collections.Generic; 使用来; 使用text; 使用System.Threading.Tasks; 名称空间石头剪刀布 { 类法官 { 公共枚举结果 { 玩家赢, 电脑赢, 平手 } 公共静态结果WhoWin (int playerNum int computerNum) {=playerNum - computerNum int结果; 如果(结果==1 | |结果==2) { 返回结果。玩家赢; } else if(结果==0) { 返回结果。平手; } 其他的 { 返回结果。电脑赢; } } } } >之前3),球员。cs玩家,出拳,
使用系统; 使用System.Collections.Generic; 使用来; 使用text; 使用System.Threading.Tasks; 名称空间石头剪刀布 { 类的球员 { 公共静态int ShowFist(字符串拳头) { 开关(拳头) { ”石头”:返回1; “剪刀”:返回2; 情况下“布”:返回3; 默认值:返回0; } } } } >之前界面后台实现代码:,
使用系统; 使用System.Collections.Generic; 使用System.ComponentModel; 使用System.Data; 使用System.Drawing; 使用先; 使用来; 使用text; 使用System.Threading.Tasks; 使用System.Windows.Forms; 名称空间石头剪刀布 { 公共部分中类Form1:形式 { 公共Form1 () { InitializeComponent (); }///& lt; summary>///点击石头按钮///& lt;/summary>///& lt;参数name=胺⒓恕弊4? lt;/param>///& lt;参数name=" e "祝辞& lt;/param> 私人空间btnStone_Click(对象发送方,EventArgs e) { 字符串的拳头="石头”; 游戏(拳头); }///& lt; summary>///点击剪刀按钮///& lt;/summary>///& lt;参数name=胺⒓恕弊4? lt;/param>///& lt;参数name=" e "祝辞& lt;/param> 私人空间btnScissors_Click(对象发送方,EventArgs e) { 字符串的拳头="剪刀”; 游戏(拳头); }///& lt; summary>///点击布按钮///& lt;/summary>///& lt;参数name=胺⒓恕弊4? lt;/param>///& lt;参数name=" e "祝辞& lt;/param> 私人空间btnCloth_Click(对象发送方,EventArgs e) { 字符串的拳头="布"; 游戏(拳头); }//背景图片轮播 String[]路径=Directory.GetFiles (@“C: \ \石”);//此目录里面必须有图片,否则会报的错 私人空间timer1_Tick(对象发送方,EventArgs e) { 这一点。BackgroundImage=形象。FromFile(路径[新的随机()。下一个(0,paths.Length)]); } 静态int playerWinTimes=0;//玩家赢的次数 静态int gameTimes=0;//总共次数 静态int tieTimes=0;//平手次数///& lt; summary>///通用方法///& lt;/summary>///& lt;参数name=叭贰弊4? lt;/param> 私人空间游戏(字符串拳头) { gameTimes + +; lbPlayer。文本=拳头; int playerNum=Player.ShowFist(拳头); 计算机cpu=新电脑(); int cpuNum=cpu.ShowFist (); lbComputer。文本=cpu.Fist; 法官。结果结果=法官。WhoWin (playerNum cpuNum); lbJudge。文本=result.ToString (); lbStatistics。文本="统计信息:\ n \ n1。您赢了“+ playerWinTimes +”场比赛!\ n \ n“+”2。平手了”+ tieTimes +“次;\ n \ n " + " 3。输掉了”+ (gameTimes - playerWinTimes tieTimes) +”场比赛;\ n \ n“+”4。共进行了“+ gameTimes +”场比赛! \ n \ n”; 如果结果==Judge.RESULT。玩家赢) { playerWinTimes + +; 对话框。显示(“恭喜,您已经赢了”+ playerWinTimes +“场比赛!”+“共进行了”+ gameTimes +“场比赛!”); } else if(结果==Judge.RESULT。平手) { tieTimes + +; } } } }c# Winform上实现石头剪刀布游戏