码迷,mamicode.com
首页 > 其他好文 > 详细

随机发牌

时间:2015-04-14 00:37:47      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:

#include "stdafx.h"
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <time.h>
typedef struct card
{
 char suit[10];
 char face[10];
}CARD;
void Deal(CARD *wCard);
void shuffle(CARD *wCard);
void FillCard(CARD wCard[],char *wFace[],char *wSuit[]);
int main()
{
 char *suit[] = {"Spades","Hearts","Clubs","Diamonds"};
 char *face[] = {"A","2","3","4","5","6","7","8","9,","10","Jack","Queen","King"};
 CARD card[52];
 srand (time(NULL));
 FillCard(card,face,suit);
 shuffle(card);
 Deal(card);
 system("pause");
 return 0;
}
/*函数功能:花色按黑桃,红桃,草花,方块的顺序,面值按A--K的顺序,排列52张牌*/
void FillCard(CARD wCard[],char *wFace[],char *wSuit[])
{
 int i;
 for(i = 0;i < 52;i++)
 {
  strcpy_s(wCard[i].suit,wSuit[i/13]);
  strcpy_s(wCard[i].face,wFace[i%13]);
 }
}
/*函数功能: 将52张牌的顺序打乱以模拟洗牌过程*/
void shuffle(CARD *wCard)
{
 int i,j;
 CARD temp;
 for(i = 0;i < 52;i++)
 {
  j = rand()%52;
  temp = wCard[i];
  wCard[i] = wCard[j];
  wCard[j] = temp;
 }
}
void Deal(CARD *wCard)
{
 int i;
 for(i = 0;i < 52;i++)
 {
  printf_s("%9s%9s%c",wCard[i].suit,wCard[i].face,i%2 ==0?‘\n‘:‘\t‘);
 }
 printf_s("\n");

}

随机发牌

标签:

原文地址:http://www.cnblogs.com/joyclub/p/4423595.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!