所以我编写了一个程序,它将一副纸牌中的每张纸牌分配到一个数组中。我被要求制作一个随机播放功能、displayCard 功能以及一个 dealCard 功能。我真正感到困惑的是 dealCard
函数。我不明白从牌堆中发牌/拿牌并且不再将其放入 deck[]
的概念。
最佳答案
而不是将纸牌视为 char deck[SIZE]
,将纸牌重新定义为
char deck[SIZE];
int deck_count;
或者作为一个结构:
typedef struct {
char deck[SIZE];
int n;
} stock;
然后创建函数来操纵股票:
void stock_newdeck(stock *st); // fresh deck of 52 cards: ordered
void stock_shuffle(stock *st); // shuffle the n cards
int stock_isempty(stock *st); // any cards left?
char stock_draw(stock *st); // draw the top card
关于c - 从 c 中的数组中删除一张卡片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22851335/