日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

C语言实现随机抽取纸牌

發布時間:2025/3/12 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C语言实现随机抽取纸牌 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

程序設計要求

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

程序設計流程

1 . 使用庫函數和時間函數,用time函數返回當前時間,用一個數表示,srand函數初始化C語言的隨機數生成器。通過把time函數返回值傳遞給srand可以避免程序每次運行發同樣的牌。rand函數產生隨機數,通過%縮放。

2 . 使用二位數組來進行數據記錄。4行表示每種花色,13列表示每種等級。

3 . 程序開始時,數組元素都為false,每隨機抽取一張紙牌時,檢查in_hand對應元素真假,如果為真,則抽取其他紙牌,如果為假,記錄到數組元素當中,提醒我們這張牌已經記錄過了。

效果展示

完整代碼

#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 13int 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; } 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的C语言实现随机抽取纸牌的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。