【求教】用C#编扑克牌游戏程序,怎么获取扑克牌面数值?怎么知道这是数值几的牌?

解决方案 »

  1.   

    将扑克牌对象设计为一个类Card,用于定义标识每一张特定扑克牌的牌面(花色和牌点)和显示操作。其中特意说明的属性是 索引标识属性index作为每张扑克牌唯一标识,是确定牌面花色和牌点的依据。它的值域为0 - 53的整数值,每一个index值与一张特定牌面的花色和牌点相对应: 0 - 12对应梅花Club的A 2 3 4 5 6 7 8 9 10 J Q K;13 - 25对应方块Diamond的A 2 3 4 5 6 7 8 9 10 J Q K;26 - 38对应红心Heart的A 2 3 4 5 6 7 8 9 10 J Q K;39 - 51对应黑桃Spade的A 2 3 4 5 6 7 8 9 10 J Q K。52对应小王牌L Trump,53对应大王牌B Trump显然,index除以13所得到的整数商可以表示花色,而index模13所得到的余数恰恰是牌点(大小王牌的index值除外) 牌面显示属性face:在图形用户界面的应用程序中该属性是描述牌面图形的 复杂图形类;而在控制台文本界面的应用程序中该属性是字符数组类型,用于存放描述牌面的字符串。例如:“C-A”表示梅花A,“D-6”表示方块6,“H-10” 表示红心10,“S-Q”表示黑桃Q。