#include #include #define SUIT_HEART 1 #define SUIT_CLUB 2 #define SUIT_DIAMOND 3 #define SUIT_SPADE 4 #define DECK_SIZE 52 struct Card { int suit; int number; }; char *strSuit = NULL; char *strCard = NULL; void DisplayCard(Card c); int main() { Card *cards = (Card *)malloc(sizeof(Card) * 52); if (cards == NULL) { fprintf(stderr, "Couldn't allocate memory!\n"); exit(0); } int card = 0; for (int i = 0; i < 4; i++) { for (int j=0; j < 13; j++) { //cards[card] = (Char)malloc(sizeof(Card)); cards[card].suit = i; cards[card].number = j; card++; } } for (int n = 0; n < 52; n++) { DisplayCard(cards[n]); } //printf("%d of %d\n", cards[n].suit, cards[n].number); free(cards); free(strSuit); free(strCard); return 0; } void DisplayCard(Card c) { int s = c.suit; int ci = c.number; s++; ci++; if (s == SUIT_HEART) strSuit = "Hearts"; else if (s == SUIT_DIAMOND) strSuit = "Diamonds"; else if (s == SUIT_SPADE) strSuit = "Spades"; else strSuit = "Clubs"; if (ci == 11) strCard = "Jack"; else if (ci == 12) strCard = "Queen"; else if (ci == 13) strCard = "King"; else if (ci == 1) strCard = "Ace"; else { sprintf(strCard, "%d", ci); } printf("%s of %s\n", strCard, strSuit); strCard = NULL; }