这篇文章主要为大家详细介绍了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#实现石头剪刀布游戏
基础教程推荐
猜你喜欢
- winform把Office转成PDF文件 2023-06-14
- C# 调用WebService的方法 2023-03-09
- unity实现动态排行榜 2023-04-27
- linux – 如何在Debian Jessie中安装dotnet core sdk 2023-09-26
- ZooKeeper的安装及部署教程 2023-01-22
- C# List实现行转列的通用方案 2022-11-02
- 一个读写csv文件的C#类 2022-11-06
- C# windows语音识别与朗读实例 2023-04-27
- C#控制台实现飞行棋小游戏 2023-04-22
- C#类和结构详解 2023-05-30