一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - C# - C# Winform實現石頭剪刀布游戲

C# Winform實現石頭剪刀布游戲

2022-03-08 14:24jiliqiang1986 C#

這篇文章主要為大家詳細介紹了Winform實現石頭剪刀布游戲,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了Winform實現石頭剪刀布游戲的具體代碼,供大家參考,具體內容如下

新建一個windows窗體程序,用數字1代表石頭,用數字2代表剪刀,用數字3代表布,結果取玩家和電腦出拳之差,有三種結果

玩家贏: -1,2

平手: 0

玩家輸: 其它值

新建3個類: 

1)Computer.cs 電腦隨機出拳

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace 石頭剪刀布
 
{
 
 class Computer
 
 {
 
 public string Fist
 {
 
  get;
  set;
 
 }
 
 public int ShowFist()
 
 {
  Random rnd = new Random();
  int fist = rnd.Next(1, 4);
  switch (fist)
 
  {
 
  case 1: Fist = "石頭"; break;
  case 2: Fist = "剪刀"; break;
  case 3: Fist = "布"; break;
 
  }
 
  return fist;
 
 }
 
 }
 
}

2)、Judge.cs 裁判類 判斷輸贏 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace 石頭剪刀布
 
{
 class Judge
 
 {
 
 public enum RESULT
 
 {
 
  玩家贏,
  電腦贏,
  平手
 
 }
 
 public static RESULT WhoWin(int playerNum, int computerNum)
 
 {
 
  int result = playerNum - computerNum;
  if (result == -1 || result == 2)
 
  {
 
  return RESULT.玩家贏;
 
  }
 
  else if (result == 0)
 
  {
 
  return RESULT.平手;
 
  }
 
  else
 
  {
 
  return RESULT.電腦贏;
 
  }
 
 }
 
 }
 
}

3)、Player.cs 玩家,出拳 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace 石頭剪刀布
 
{
 
 class Player
 
 {
 
 public static int ShowFist(string fist)
 
 {
 
  switch (fist)
 
  {
 
  case "石頭": return 1;
  case "剪刀": return 2;
  case "布": return 3;
  default: return 0;
 
  }
 
 }
 
 }
 
}

界面后臺實現代碼: 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace 石頭剪刀布
 
{
 
 public partial class Form1 : Form
 
 {
 
 public Form1()
 
 {
 
  InitializeComponent();
 
 }
 
 /// <summary>
 /// 點擊石頭按鈕
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void btnStone_Click(object sender, EventArgs e)
 
 {
 
  String fist = "石頭";
 
  Game(fist);
 
 }
 
 /// <summary>
 /// 點擊剪刀按鈕
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 
 private void btnScissors_Click(object sender, EventArgs e)
 
 {
 
  String fist = "剪刀";
  Game(fist);
 
 }
 
 /// <summary>
 /// 點擊布按鈕
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 
 private void btnCloth_Click(object sender, EventArgs e)
 
 {
 
  String fist = "布";
  Game(fist);
 
 
 
 }
 
 
 
 //背景圖片輪播
 String[] paths = Directory.GetFiles(@"C:\work\stone");//此目錄里面必須有圖片,否則會報錯
 private void timer1_Tick(object sender, EventArgs e)
 
 {
 
  this.BackgroundImage = Image.FromFile(paths[new Random().Next(0, paths.Length)]);
 
 
 
 }
 static int playerWinTimes = 0;//玩家贏的次數
 static int gameTimes = 0;//總共次數
 static int tieTimes = 0;//平手次數
 
 
 /// <summary>
 /// 通用方法
 /// </summary>
 /// <param name="fist"></param>
 
 private void Game(String fist)
 
 {
 
  gameTimes++;
  lbPlayer.Text = fist;
  int playerNum = Player.ShowFist(fist);
  Computer cpu = new Computer();
  int cpuNum = cpu.ShowFist();
  lbComputer.Text = cpu.Fist;
  Judge.RESULT result = Judge.WhoWin(playerNum, cpuNum);
  lbJudge.Text = result.ToString();
  lbStatistics.Text = "統計信息:\n\n1.您贏了" + playerWinTimes + "場比賽!\n\n" + "2.平手了" + tieTimes + "次; \n\n" + "3.輸掉了" + (gameTimes - playerWinTimes - tieTimes) + "場比賽; \n\n" + "4.共進行了" + gameTimes + "場比賽!\n\n";
 
 
  if (result == Judge.RESULT.玩家贏)
 
  {
 
  playerWinTimes++;
  MessageBox.Show("恭喜,您已經贏了" + playerWinTimes + "場比賽!" + " 共進行了" + gameTimes + "場比賽!");
 
  }
 
  else if (result == Judge.RESULT.平手)
 
  {
 
  tieTimes++;
 
  }
 
 
 }
 
 }
 
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://blog.csdn.net/jiliqiang1986/article/details/52035008

延伸 · 閱讀

精彩推薦
  • C#C#實現XML文件讀取

    C#實現XML文件讀取

    這篇文章主要為大家詳細介紹了C#實現XML文件讀取的相關代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    Just_for_Myself6702022-02-22
  • C#C# 實現對PPT文檔加密、解密及重置密碼的操作方法

    C# 實現對PPT文檔加密、解密及重置密碼的操作方法

    這篇文章主要介紹了C# 實現對PPT文檔加密、解密及重置密碼的操作方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下...

    E-iceblue5012022-02-12
  • C#C#設計模式之Visitor訪問者模式解決長隆歡樂世界問題實例

    C#設計模式之Visitor訪問者模式解決長隆歡樂世界問題實例

    這篇文章主要介紹了C#設計模式之Visitor訪問者模式解決長隆歡樂世界問題,簡單描述了訪問者模式的定義并結合具體實例形式分析了C#使用訪問者模式解決長...

    GhostRider9502022-01-21
  • C#深入解析C#中的交錯數組與隱式類型的數組

    深入解析C#中的交錯數組與隱式類型的數組

    這篇文章主要介紹了深入解析C#中的交錯數組與隱式類型的數組,隱式類型的數組通常與匿名類型以及對象初始值設定項和集合初始值設定項一起使用,需要的...

    C#教程網6172021-11-09
  • C#WPF 自定義雷達圖開發實例教程

    WPF 自定義雷達圖開發實例教程

    這篇文章主要介紹了WPF 自定義雷達圖開發實例教程,本文介紹的非常詳細,具有參考借鑒價值,需要的朋友可以參考下...

    WinterFish13112021-12-06
  • C#C#裁剪,縮放,清晰度,水印處理操作示例

    C#裁剪,縮放,清晰度,水印處理操作示例

    這篇文章主要為大家詳細介紹了C#裁剪,縮放,清晰度,水印處理操作示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    吳 劍8332021-12-08
  • C#C#通過KD樹進行距離最近點的查找

    C#通過KD樹進行距離最近點的查找

    這篇文章主要為大家詳細介紹了C#通過KD樹進行距離最近點的查找,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    帆帆帆6112022-01-22
  • C#Unity3D實現虛擬按鈕控制人物移動效果

    Unity3D實現虛擬按鈕控制人物移動效果

    這篇文章主要為大家詳細介紹了Unity3D實現虛擬按鈕控制人物移動效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一...

    shenqingyu060520232410972022-03-11
主站蜘蛛池模板: 男人操美女视频 | 欧美一区二区视频 | 欧美综合一区二区三区 | 欧美成人aa久久狼窝动画 | 久9视频这里只有精品123 | 亲爱的客栈第二季免费观看完整版 | 91视频一区 | 海绵宝宝第二季全集免费观看 | 亚洲欧洲色图 | 免费观看无人区完整版 | 丝袜护士强制脚足取精 | 3d蒂法受辱在线播放 | 国产短视频精品一区二区三区 | 日韩亚洲欧美一区二区三区 | 丝袜老师好湿好紧我要进去了 | 欧美a级在线 | 91麻豆精东果冻天美传媒老狼 | 亚洲福利一区二区精品秒拍 | 青青草原在线免费 | 天若有情1992国语版完整版 | 四虎官网 | 奇米视频7777 | 污漫日本E同人 | 女bbbbxxx孕妇 | 欧美又大又粗又爽视频 | 99精品在免费线视频 | 女教师系列三上悠亚在线观看 | 师尊被各种play打屁股 | 国产xxx在线 | 91热国内精品永久免费观看 | 偷偷狠狠的日日高清完整视频 | 国产综合亚洲欧美日韩一区二区 | 国产亚洲精品91 | 国产九九在线 | 四虎永久免费地址在线网站 | 999导航| 成人网视频免费播放 | 欧美美女一级片 | 免费精品在线视频 | 国产做a爰片久久毛片 | 干露露视频 性感写真 |