Now that we have a deck of cards, what are some operations that we might need to perform on it? Two operations immediately come to mind—first, initializing the deck to the proper suit and face values, and second, printing out the deck of cards.
Let's add the following two function prototypes to the program, as follows:
void InitializeDeck( Card* pDeck );
void PrintDeck(Card* pDeck );
In each function, the function takes a pointer to a Card structure, which for now is an array of Card. These will operate on the entire deck, so no other parameters are needed for these functions.
To initialize our deck of cards, we will loop through the array, setting the structure member values. Before we show that, however, consider the patterns of repetition in an ordered card deck. Each suite has 13 cards. Within those 13 cards, the face value goes from two to ace (13). We now have some options for how to loop through...