自动发牌(C#版)
利用数组实现发牌过程
一副牌去掉大小王,还剩52张。一共东、南、西、北四家,每家随机发13张牌。
提示:
- 东、南、西、北四家用一维数组表示
- 每家的牌采用一维数组表示(13张)
- 花色:enum Suit { Clubs, Diamonds, Hearts, Spades }
- 牌面:enum Value { Two, Three, Four, Five, Six, Seven, Eight, Nine, Ten, Jack, Queen, King, Ace }
- 每张牌可以独立作为一个类来实现,该类中包含两个成员,即花色和牌面
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Poke
{
class Program
{
static void Main(string[] args)
{
Poker[] poker = ];
shuffle(poker);
//发牌
Person[] person = ];
; i < ; i++)
{
person[i] = new Person();
person[i].perPoker = ];
}
; i < ; i++)
{
== )
person[].perPoker[person[].count++] = poker[i];
== )
person[].perPoker[person[].count++] = poker[i];
== )
person[].perPoker[person[].count++] = poker[i];
== )
person[].perPoker[person[].count++] = poker[i];
}
//显示每个人的牌
; i < ; i++)
{
Console.Write();
; j < ; j++)
{
Console.Write(person[i].perPoker[j] + "\t");
}
Console.WriteLine();
}
Console.ReadKey();
}
//洗牌
static void shuffle(Poker[] poker)
{
//设置52张牌
; i < ; i++)
; j < ; j++)
poker[i * + j] = );
; i <= ; i++)
{
Random random = new Random();
, );
Poker temp = poker[i - ];
poker[i - ] = poker[num-];
poker[num-] = temp;
}
}
}
//花色
enum Suit { Clubs, Diamonds, Hearts, Spades }
//牌的值
, Two, Three, Four, Five, Six, Seven, Eight, Nine, Ten, Jack, Queen, King }
//扑克牌类
class Poker
{
public Suit suit;
public Value value;
public Poker() { }
public Poker(Suit i, Value v)
{
suit = i;
value = v;
}
public override string ToString()
{
return (suit.ToString()+","+value.ToString());
}
}
class Person
{
public Person(){}
public Poker[] perPoker;
public int count;
}
}
自动发牌(C#版)的更多相关文章
- 使用 shell 脚本自动获取发版指标数据
问题背景 大一点的公司都会建立一套规章流程来避免低级错误,例如合入代码前必需经过同行评审:上线前必需提测且通过 QA 验证:全量前必需经过 1%.5%.10%.20%.50% 的灰度过程.尤其是最后一 ...
- Mybatis 代码自动生成[myeclipse版]
使用环境说明: OS:windows 7 64位 myeclipse: 2017 CI 1.安装 打开myeclipse--help---Install from catalog--选择eclipse ...
- Win10_禁用自动更新(官方版)
1> win键>输入服务>打开>找到windowsUpdate-->启动类型为-禁用 -->> 恢复失三个选项改为-->>无操作 2>win ...
- 闯越自动签到demo版补充说明
demo代码:https://www.cnblogs.com/canmeng/p/11000548.html 定位出错是由于cookie 我重新登录账号过,cookies的值就变了 当时没注意cook ...
- 自动判断手机版和pc版
<html><head><title>欢迎来到手机版</title><script>var ua = navigator.userAgent ...
- jQuery弹出提示信息自动消失简洁版
// 在bootstrap中可以,可以使用如下方式实现弹出提示信息自动消失,如果没有使用bootstrap框架,可以自定义样式 //tip是提示信息,type:'success'是成功信息,'dang ...
- Radmin自动连接 c#版 带源码
实现原理:1.利用radminview 自带命令 2.大漠绑定插件. 附图: 源码下载:http://files.cnblogs.com/eastday/Radmin%E8%87%AA%E5%8A%A ...
- 手机访问PC网站自动跳转到手机版
随着智能手机的流行,4G时代来临,手机用户越来越多,在生活中甚至手机比电脑用的还多,当前开发的网站大都是PC和WAP版并存,但是很少有用户愿意去记住一个网站的两个端的不同域名,所以需要我们做一些设置, ...
- 光盘刻录 CD刻录软件 Ashampoo Burning Studio特别版 刻录CD就这么简单
著名的刻录软件Nero,其近上百M体积实在太大,而且安装之后的文件体积也有上G多.这么大的体积安装使用都不方便,好在现在很多都做得很不错,比如阿香婆的光盘刻录软件Ashampoo® Burning S ...
随机推荐
- Servlet&jsp基础:第一部分
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- C语言--指针问题_1
#include <stdio.h> #include <string.h> main() { int *a,*b,*c; a=b=c=(int *)malloc(sizeof ...
- So easy Webservice 8.spring整合CXF 发布WS
1.添加jar包(cxf的jar包中包含了spring的jar包),添加spring配置文件 2.web.xml中配置CXFServlet,过滤WS服务的地址 <!-- 配置CXFServlet ...
- linux下文件系统类型的学习
1. 以超级用户权限登陆Linux,进入 /lib/modules/2.6.32--504.el6.x86_64/kernel/fs目录执行 ls 命令(不同Linux发行版本的Fs目录有些不同你可 ...
- iOS - File Archive/UnArchive 文件压缩/解压
1.ZipArchive 方式 ZipArchive 只能对 zip 类文件进行压缩和解压缩 GitHub 网址:https://github.com/ZipArchive/ZipArchive Zi ...
- iOS - UITabBarController
前言 NS_CLASS_AVAILABLE_IOS(2_0) @interface UITabBarController : UIViewController <UITabBarDelegate ...
- python成长之路【第一篇】:python简介和入门
一.Python简介 Python(英语发音:/ˈpaɪθən/), 是一种面向对象.解释型计算机程序设计语言. 二.安装python windows: 1.下载安装包 https://www.pyt ...
- sqlplus命令大全
一.ORACLE的启动和关闭 1.在单机环境下要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下su - oracle a.启动ORACLE系统oracle>svrmgrlSVR ...
- Vim优化
写python代码时,希望缩进是4个空格,而不是制表符tab, 在vim中,我们只需要简单配置一下就ok了,打开~/.vimrc加上下面的几行(如果已经有了,修改一下数值就行了). set tabst ...
- Android照相机模块编程 照片颠倒问题及查询摄像头参数问题的解决
这两天编程弄Android照相机模块,设置好各种参数后,发现预览的时候,照片是颠倒了,不是上下颠倒而是颠倒90°. 我的手机是华为U9200,用的Android4.0.3,后来看到http://www ...