最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語言實現(xiàn)隨機抽取紙牌

 更新時間:2019年10月22日 09:01:09   作者:m__x__p__696  
這篇文章主要為大家詳細介紹了C語言實現(xiàn)隨機抽取紙牌,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

利用數(shù)組實現(xiàn)從一副牌中隨機抽取紙牌,供大家參考,具體內(nèi)容如下

一、項目要求

本程序負責發(fā)一副標準紙牌,每張標準紙牌都有一種花色(梅花、方塊、黑桃、紅桃)和一個等級(2,3,4,5,6…K,A)。程序需要用戶指明手機有幾張牌,格式為:

Enter number of cards in hand:____
your hand: _____

二、原理

1.使用庫函數(shù)

time函數(shù)返回當前時間,用一個數(shù)表示,srand函數(shù)初始化C語言的隨機數(shù)生成器。通過把time函數(shù)返回值傳遞給srand可以避免程序每次運行發(fā)同樣的牌。rand函數(shù)產(chǎn)生隨機數(shù),通過%縮放。

2.利用二維數(shù)組記錄

程序采用in_hand二維數(shù)組對已經(jīng)選擇的牌進行記錄,4行表示每種花色,13列表示每種等級。
程序開始時,數(shù)組元素都為false,每隨機抽取一張紙牌時,檢查in_hand對應元素真假,如果為真,則抽取其他紙牌,如果為假,記錄到數(shù)組元素當中,提醒我們這張牌已經(jīng)記錄過了。

三、項目代碼

項目的具體代碼展示如下:

#include <stdio.h>
#include <ctype.h>
#include <stdbool.h>
#include <time.h>
#include <stdlib.h>


# define num_rates ((int) (sizeof(value)/sizeof(value[0])))
# define initial_balance 100.00
 
#define num_suits 4
#define num_ranks 13
 
int main(){

bool in_hand[num_suits][num_ranks] = {false};
int num_cards,rank,suit;

const char rank_code[] = { '2','3','4','5','6','7','8','9',
    't','j','q','k','a'};
const char suit_code[] = { 'c','d','h','s'};
printf("enter number\n");
scanf("%d",&num_cards);

printf("your hands\n");
while(num_cards>0){
 suit = rand()%num_suits;
 rank = rand()%num_ranks;
 if(!in_hand[suit][rank]){
 in_hand[suit][rank] = true;
 num_cards--;
 printf(" %c%c",rank_code[rank],suit_code[suit]);
 }
}
printf("\n");
return 0;
}

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:

相關文章

最新評論

大丰市| 余庆县| 泰宁县| 库尔勒市| 潮安县| 平南县| 龙井市| 天门市| 塔河县| 沙雅县| 永济市| 怀安县| 通榆县| 久治县| 新乐市| 万宁市| 卓尼县| 汕头市| 大新县| 大厂| 江城| 托克逊县| 台山市| 永兴县| 乌兰县| 青川县| 新和县| 如东县| 长乐市| 石狮市| 合肥市| 阳原县| 武功县| 阜新| 安仁县| 花垣县| 泗洪县| 岑巩县| 广宁县| 开江县| 翼城县|