这篇文章主要为大家详细介绍了C#实现石头剪刀布游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了C#实现石头剪刀布的具体代码,供大家参考,具体内容如下
代码
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 石头剪刀布
{
public partial class Form1 : Form
{
int computer_sorce = 0;
int user_sorce = 0;
int i=0,j = 0;
int last_step = -1;//0表示平局,1为电脑上步加一,2为用户上步加一
public Form1()
{
InitializeComponent();
this.Text = "石头剪刀布";
label3.Text = ":";
label1.Visible = false;
label2.Visible = false;
label3.Visible = false;
label4.Visible = false;
button1.Text = "开始游戏";
button2.Text = "重新开始";
button3.Text = "悔棋";
button4.Text = "退出";
button2.Visible = false;
button3.Visible = false;
button4.Visible = false;
pictureBox2.Visible = false;
pictureBox3.Visible = false;
pictureBox3.Visible = false;
pictureBox4.Visible = false;
pictureBox5.Visible = false;
pictureBox6.Visible = false;
pictureBox7.Visible = false;
pictureBox8.Visible = false;
pictureBox9.Visible = false;
pictureBox10.Visible =false;
pictureBox11.Visible = false;
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
pictureBox1.Visible = false;
button1.Visible = false;
button1.Enabled = false;
pictureBox2.Visible = true;
pictureBox3.Visible = true;
pictureBox4.Visible = true;
pictureBox5.Visible = true;
pictureBox6.Visible = true;
pictureBox7.Visible = true;
pictureBox8.Visible = true;
pictureBox9.Visible = true;
pictureBox10.Visible = true;
pictureBox11.Visible = true;
button2.Visible = true;
button3.Visible = true;
button4.Visible = true;
}
private void game_computer()
{
Random rand = new Random();
i = rand.Next(4);
if (i == 1)
{
pictureBox10.Load("..\\..\\picture\\1.jpg");
}
else if (i == 2)
{
pictureBox10.Load("..\\..\\picture\\2.jpg");
}
else if(i == 3)
{
pictureBox10.Load("..\\..\\picture\\3.jpg");
}
}
private void game_judgment()
{
if (i == 1)//电脑出石头
{
if (j == 1)
{
last_step = 0;
}
else if (j == 2)//用户出剪刀
{
computer_sorce++;
last_step = 1;
}
else if (j == 3)//用户出布
{
user_sorce++;
last_step = 2;
}
}
else if (i == 2)//电脑出剪刀
{
if (j == 1)//用户出石头
{
user_sorce++;
last_step = 2;
}
else if (j == 2)
{
last_step = 0;
}
else if (j == 3)//用户出布
{
computer_sorce++;
last_step = 1;
}
}
else if (i == 3)//电脑出布
{
if (j == 1)//用户出石头
{
computer_sorce++;
last_step = 1;
}
else if (j == 2)//用户出剪刀
{
user_sorce++;
last_step = 2;
}
else if (j == 3)
{
last_step = 0;
}
}
if (computer_sorce == 2)//当电脑分数到2时,显示you lose
{
label1.Visible = true;
pictureBox7.Enabled = false;//结果出来后三个图片按钮失效
pictureBox8.Enabled = false;
pictureBox9.Enabled = false;
label1.Text = "YOU LOSE!";
}
else if (user_sorce == 2)//当用户分数到2时,显示you win
{
label1.Visible = true;
pictureBox7.Enabled = false;
pictureBox8.Enabled = false;
pictureBox9.Enabled = false;
label1.Text = "YOU WIN!";
}
}
private void button4_Click(object sender, EventArgs e)//退出按钮
{
this.Close();
}
private void pictureBox7_Click(object sender, EventArgs e)//用户石头图片
{
j = 1;
pictureBox10.Visible = true;//划拳图片显示正常
pictureBox11.Visible = true;
label2.Visible = true;//计分器三个label显示
label3.Visible = true;
label4.Visible = true;
game_computer();
game_judgment();
label2.Text = computer_sorce.ToString();
label4.Text = user_sorce.ToString();
pictureBox11.Load("D:\\newdesktop\\1.jpg");
}
private void pictureBox8_Click(object sender, EventArgs e)//用户剪刀图片
{
j = 2;
pictureBox10.Visible = true;//划拳图片显示正常
pictureBox11.Visible = true;
label2.Visible = true;//计分器三个label显示
label3.Visible = true;
label4.Visible = true;
game_computer();
game_judgment();
label2.Text = computer_sorce.ToString();
label4.Text = user_sorce.ToString();
pictureBox11.Load("D:\\newdesktop\\2.jpg");
}
private void pictureBox9_Click(object sender, EventArgs e)//用户布图片
{
j = 3;
pictureBox10.Visible = true;//划拳图片显示正常
pictureBox11.Visible = true;
label2.Visible = true;//计分器三个label显示
label3.Visible = true;
label4.Visible = true;
game_computer();
game_judgment();
label2.Text = computer_sorce.ToString();
label4.Text = user_sorce.ToString();
pictureBox11.Load("D:\\newdesktop\\3.jpg");
}
private void button2_Click(object sender, EventArgs e)
{
pictureBox7.Enabled = true;//重新开始后三个图片按钮生效
pictureBox8.Enabled = true;
pictureBox9.Enabled = true;
i = 0;
j = 0;
computer_sorce = 0;
user_sorce = 0;
label2.Text = computer_sorce.ToString();
label4.Text = user_sorce.ToString();
pictureBox10.Visible = false;
pictureBox11.Visible = false;
label1.Visible = false;
label2.Visible = false;
label3.Visible = false;
label4.Visible = false;
}
private void button3_Click(object sender, EventArgs e)
{
label1.Visible = false;
pictureBox7.Enabled = true;
pictureBox8.Enabled = true;
pictureBox9.Enabled = true;
pictureBox10.Visible = false;
pictureBox11.Visible = false;
if (last_step == 0)
{
}
else if (last_step == 1)
{
computer_sorce--;
label2.Text = computer_sorce.ToString();
label4.Text = user_sorce.ToString();
}
else if (last_step == 2)
{
user_sorce--;
label2.Text = computer_sorce.ToString();
label4.Text = user_sorce.ToString();
}
last_step = -1;
}
}
}
效果图
开始游戏
点击开始
划拳
判定胜败
重新开始
悔棋
退出
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持得得之家。
织梦狗教程
本文标题为:C#实现石头剪刀布游戏


基础教程推荐
猜你喜欢
- Unity shader实现高斯模糊效果 2023-01-16
- C#通过标签软件Bartender的ZPL命令打印条码 2023-05-16
- C# 解析XML和反序列化的示例 2023-04-14
- 实例详解C#实现http不同方法的请求 2022-12-26
- Unity 如何获取鼠标停留位置下的物体 2023-04-10
- C#中 Json 序列化去掉null值的方法 2022-11-18
- C#获取指定目录下某种格式文件集并备份到指定文件夹 2023-05-30
- c# – USING块在网站与Windows窗体中的行为不同 2023-09-20
- C#中的Linq to JSON操作详解 2023-06-08
- C#调用摄像头实现拍照功能的示例代码 2023-03-09