zoukankan      html  css  js  c++  java
  • 产生不重复的随机牌 20130204 22:06 413人阅读 评论(0) 收藏


    《C语言程序设计:现代方法》p121例


    /*************************************************
     *
     *本程序根据用户的输入,生成相应数量的扑克牌。
     *
     * ************************************************/
    #include <stdio.h>
    #include <time.h>
    #include <stdlib.h>
    #include <stdbool.h>
    
    #define NUM_SUITS 4
    #define NUM_RANKS 13
    
    int main(void){
    
        int num_cards, suit, rank;
        //用于记录牌的数字及花色。
        const char suit_code[4]={'a','b','c','d'};
        const char rank_code[13]={'1','2','3','4','5','6','7','8','9', 't', 'J','Q','K'};
        //用于记录某个牌是否已经发出去。
        bool isCardExist[NUM_RANKS][NUM_SUITS]={false};
    
        printf("How many cards do you want: ");
        scanf("%d", &num_cards);
    
        printf("Your cards are: ");
        srand((unsigned long)time(NULL));
        for(int i=0; i<num_cards; i++){
            suit=rand()%NUM_SUITS;
            rank=rand()%NUM_RANKS;
            if(isCardExist[rank][suit]==false){
                isCardExist[rank][suit]=true;
                printf("%c%c  ", rank_code[rank], suit_code[suit]);
            }
            else
                i--;
        }
        printf("\n");
        
        return 0;
    }


    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    three.js模型
    three.js贴图
    three.js材质
    three.js自定义形状
    border
    虚拟主机Dede程序安装
    万网虚拟主机目录
    ConcurrentHashMap
    Oracle中select使用别名
    单例模式
  • 原文地址:https://www.cnblogs.com/lujinhong2/p/4637440.html
Copyright © 2011-2022 走看看