扑克牌

作者在 2010-05-24 19:11:26 发布以下内容
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define NUM_COLOR 4        /*花色*/
#define NUM_PAI 13    /*牌数*/
#define TRUE 1
#define FALSE 0

typedef int Bool;

main()
{
    Bool in_hand[NUM_COLOR] [NUM_PAI] = {0};    /*将花色和牌数都初始化为FALSE*/
    int num_cards, pai, color;
    const char rank_code[] = {'2','3','4','5','6','7','8','9','t','j','q','k','a'};  /*用const的用处?*/
    
    /*const是一个C语言的关键字,它限定一个变量不允许被改变。使用const在一定程度上可以提高程序的健壮性,
    另外,在观看别人代码的时候,清晰理解const所起的作用,对理解对方的程序也有一些帮助。
*/
    
    const char suit_code[] = {'c','d','h','s'};
    
    srand((unsigned) time(NULL));    /*初始化随机数发生器 */
    
    printf("Enter number of cards in hand:");
    scanf("%d",&num_cards);
    
    printf("Your hand:");
    while(num_cards > 0)
    {
            /* 随机数发生器 rand() */
        color = rand() % NUM_COLOR;    /*将随机抽取的花色存储到 color中 */    
        pai = rand() % NUM_PAI;    /*将随机抽取的牌存储到 pai 中*/
        if(!in_hand[color][pai])
        {
            in_hand[color][pai] = TRUE;
            num_cards--;
            printf(" %c%c",rank_code[pai],suit_code[color]);
        }    
    }    
    printf("\n");
    system("PAUSE");
    return 0;
}
 
记录下前几天写的扑克牌程序吧。。

学习历程 | 阅读 729 次
文章评论,共0条
游客请输入验证码