C# 10点半扑克牌游戏程式码

来源:互联网 发布:淘宝店铺头像去哪改 编辑:程序博客网 时间:2024/06/04 20:01
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 Porker{    public partial class Form1 : Form    {        int[] num = new int[52];        int cnt = 0;double sum= 0.0;        public Form1()        {            InitializeComponent();        }        private void Form1_Load(object sender, EventArgs e)//預設        {               //初始化牌为封面牌            string image = "";            image = "c:\\poker\\cover.png";            pictureBox1.Image = Image.FromFile(image);            pictureBox2.Image = Image.FromFile(image);            pictureBox3.Image = Image.FromFile(image);            pictureBox4.Image = Image.FromFile(image);            pictureBox5.Image = Image.FromFile(image);            pictureBox6.Image = Image.FromFile(image);            pictureBox7.Image = Image.FromFile(image);            pictureBox8.Image = Image.FromFile(image);            pictureBox9.Image = Image.FromFile(image);            pictureBox10.Image = Image.FromFile(image);            //初始化,洗牌            int p, q;            Random rand = new Random();            for (int i = 0; i <= 51; i++)                num[i] = i;            for (int i = 1; i <= 500; i++)   // 產生亂數相互交換500次            {                p = rand.Next(52);                q = rand.Next(52);                int tmp = num[p];                num[p] = num[q];                num[q] = tmp;            }            //看牌按鍵開始按鍵結束后可以使用            button3.Enabled = false;             }        private void button1_Click(object sender, EventArgs e)//開始遊戲        {            button3.Enabled = true;//激活看牌按鍵            int r = num[0];            string st;            st = "C:\\poker\\" + r.ToString() + ".png";            pictureBox6.Image = Image.FromFile(st);            button1.Enabled = false;            sum = (r+1) % 13;            if (sum > 10)//sum大於10,sum為0.5                sum = 0.5;                        }        private void button4_Click(object sender, EventArgs e)//補牌        {            string st; double sum_a=0.0;            cnt++;            int r = num[cnt];            st = "C:\\poker\\" + r.ToString() + ".png";            switch (cnt)//cnt取值到4,共5張牌的情況            {                case 1:                    pictureBox7.Image = Image.FromFile(st);                    sum_a = (r + 1) % 13;                    if (sum_a > 10)                        sum_a = 0.5;                        sum += sum_a;//加總sum的值                    break;                case 2:                    pictureBox8.Image = Image.FromFile(st);                    sum_a = (r + 1) % 13;                    if (sum_a > 10)                        sum_a = 0.5;                        sum += sum_a;                    break;                case 3:                    pictureBox9.Image = Image.FromFile(st);                    sum_a = (r + 1) % 13;                    if (sum_a > 10)                        sum_a = 0.5;                        sum += sum_a;                    break;                case 4:                    pictureBox10.Image = Image.FromFile(st);                    sum_a = (r + 1) % 13;                    if (sum_a > 10)                        sum_a = 0.5;                        sum += sum_a;                    break;                default:                    break;            }        }        private void button3_Click(object sender, EventArgs e)//看牌        {            //看牌的时候设置补牌为不能使用            button4.Enabled = false;            //根據玩家的點數是否補牌            label1.Text = "玩家點數:" + sum.ToString();            string st; double sum_b = 0.0 , u;            int p = 6;//從第六章牌開始取值            int r;            do            {                r = num[p];//r等於第六章牌的點數                st = "C:\\poker\\" + r.ToString() + ".png";                u = r % 13+1;                if (u > 10)                    u = 0.5;                switch(p){//方法同上方法一樣                    case 6:                        pictureBox1.Image = Image.FromFile(st);                        sum_b+=u;                        break;                    case 7:                        pictureBox2.Image = Image.FromFile(st);                        sum_b+=u;                                                break;                    case 8:                        pictureBox3.Image = Image.FromFile(st);                        sum_b+=u;                        break;                    case 9:                        pictureBox4.Image = Image.FromFile(st);                        sum_b+=u;                        break;                    case 10:                        pictureBox5.Image = Image.FromFile(st);                        sum_b+=u;                        break;                    default:                        break;                }                p++;            } while (sum_b <= sum && p < 11 && sum <= 10.5);//判斷sum的進入情況               label3.Text = "電腦點數:"+sum_b;            if ((sum > sum_b && sum <= 10.5) || sum_b > 10.5)//判斷輸贏            {                label4.Text = "玩家-->赢";            }            else if (sum == sum_b)            {                label4.Text = "==";            }            else            {                label4.Text = "电脑-->赢";            }           }                  private void button2_Click(object sender, EventArgs e)//繼續遊戲        {            Application.Restart();//重新開始遊戲        }        private void button5_Click(object sender, EventArgs e)//結束遊戲        {            Application.Exit();//结束游戏        }    }}

玩家10点,电脑17点,玩家赢。

玩家12点,电脑3点,电脑赢。


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 怀孕带孩子不能上班保险怎么办 怀孕了不想上班保险怎么办 高铁票没票了怎么办 购买动车票无座怎么办 个税工资多报怎么办 火车晚点耽误了转车怎么办 坐火车联系不上怎么办 号码被别人注册了12306怎么办 注册12306的号码换了怎么办 12306号码被注册了怎么办 12306身份证被注册了怎么办 12306被别人注册了怎么办 铁路1236注册名忘记了怎么办 12306手机被别人注册了怎么办 12306注册手机不用了怎么办 到站后火车票掉了怎么办 在手机上买了票怎么办 智行火车票抢不到票怎么办 高铁买票票丢了怎么办 异地恋房费太贵怎么办 高铁票车上丢了怎么办 取了高铁票丢了怎么办 高铁买了学生票没带学生证怎么办 买的学生票超过区间怎么办 买了超过区间的学生票怎么办 火车票大于学生票购买区间怎么办 买了学生票学生证丢了怎么办 取票学生证没带怎么办 学生卡的失磁怎么办 学生证没有充磁买不了学生票怎么办 买学生票不在优惠区间怎么办 火车票学生优惠次数用完怎么办 学生乘火车优惠磁卡丢了怎么办 磁卡锁的卡丢了怎么办 电梯磁卡扣丢了怎么办 买火车票手机号填错了怎么办 买火车票乘客身份核验失败怎么办 火车票不在一个车厢怎么办站票 坐火车丢东西了怎么办 g2坐过站了怎么办 坐火车买近了怎么办