欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

石头剪刀布C#实现

程序员文章站 2022-07-08 18:06:08
石头剪刀布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...

石头剪刀布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#实现

点击开始

石头剪刀布C#实现

划拳

石头剪刀布C#实现

判定胜败

石头剪刀布C#实现
石头剪刀布C#实现

重新开始

石头剪刀布C#实现

悔棋

石头剪刀布C#实现
石头剪刀布C#实现

退出

石头剪刀布C#实现

本文地址:https://blog.csdn.net/dalao_whs/article/details/108978301

相关标签: C#