自动发牌(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 ...
随机推荐
- 关于JDK的配置
① 安装官网下载的相应JDK安装包. 现在官网主推JDK8,JDK7以及更老的版本需要注册才能提供下载链接. ② 比如个人下载的jdk7-xxx.exe,安装路径为C:\Program Files\J ...
- 【转】VB中应用DDE
动态数据交换(dde)是windows应用程序间通讯的基本方法之一,在动态数据交换的过程中,提供数据和服务的应用程序称为服务器,请求数据或服务的应用程序则称为客户. dde交谈是由客户程序启动的.如果 ...
- 关于STM32库中 __IO 修饰符(volatile修饰符,反复无常的意思)
STM32例子代码中会有像这样的代码 static __IO uint32_t TimingDelay; 这里边的__IO修饰符不好理解,单从字面可以看出是为IO相关,查其标准库可以得知这个__IO ...
- 后台输出HTML
在前台定义CSS样式: <style type="text/css"> .style1 { width: 120px; } .style3 { width: 488px ...
- C# WinForm程序添加引用后调用静态方法时报“Interfaces_Helper.Global”的类型初始值设定项引发异常。---> System.NullReferenceException: 未将对象引用设置到对象的实例。
出现原因: 因为Global类初始化某个静态变量时没有成功则会抛 System.NullReferenceException 异常,具体代码: public static string connstr ...
- return、 return false的用法
1. return返回null,起到中断方法执行的效果,只要不return false事件处理函数将会继续执行,表单将提交2. return false,事件处理函数会取消事件,不再继续向下执行.比如 ...
- 小题精炼-----初试C语言
毫无疑问, 这个又是给新入门学C语言的小鲜肉准备的! 题解: 1. 直接两个循环就ok啦! 当初讲课的时候几乎讲过原题啦. 2. 直接 100的三次方就是1000000啦, 所以直接对某数的三次方开方 ...
- mongoDB中的ID的生成原则
- Python学习(5)条件语句
目录 Python 条件语句 Python 简单的语句组 Python 条件语句 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了 ...
- Android SQLite数据库
SQLite数据库 SQLiteDatabase //管理操作数据库 管理 openDatabase //打开 openOrCreateDatabase //打开或创建 操作 ...