C#入门经典3第10章的练习做不来.求救!
为Ch10CardLib库编写一个控制台客户程序,从搅乱的Deck对象中一次取5张牌,如果这5张牌都是相同的花色,客户程序就应在屏幕上显示这5张牌,以及文本 "Flush! ",否则显示50张牌以及文本 "No flush ".
Deck myDeck = new Deck();
myDeck.Shuffle();
for (int i = 0; i < 52; i++)
{
Card tempCard = myDeck.GetCard(i);
Console.Write(tempCard.ToString());
if (i != 51)
Console.Write( ", ");
else
Console.WriteLine();
这段是本来的控制台程序.是把牌洗好以后输出在控制台上.
Deck类是一副扑克牌里面包含了构造函数创建52张牌.GetCard()为指定下标返回Card对象和洗牌函数Shuffle()
Card类里包含suit字段(花式),rank字段(ACE到老K)
------解决方案--------------------比如第一次随机到11 先去和0 比.. 那一定不会存在的....
num[0] 就被赋值11变成{11,0,0,0,0}
然后下次随机到11 因为num[0]已经是11了, 重新随机新的数字..比如随机到5
那么num数组中没有5这个数字... 则num[1] = 5
第三次随机器到 7 num数组中没有7这个数字.. num[2]=7 以此类推