Advertisement
Guest User

Untitled

a guest
Dec 6th, 2019
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.52 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4. #include <time.h>
  5. #define SIZE 36
  6. #define HAND_SIZE 6
  7. #define LEAR_LIST 4
  8. #define MAX 14
  9.  
  10.  
  11. typedef struct
  12. {
  13.     int par;
  14.     char lear;
  15. }card;
  16.  
  17. void create_deck(card deck[]);
  18. void take_card(card deck[], card hand[]);
  19. void print_hand (card hand[]);
  20.  
  21.  
  22.  
  23. int main(void)
  24. {
  25.     system( "chcp UTF-16" );
  26.     system ("cls");
  27.     card deck[SIZE]={0};
  28.     card hand[HAND_SIZE]={0};
  29.     create_deck(deck);
  30.     take_card(deck, hand);
  31.     print_hand(hand);
  32.    
  33.     return 0;
  34. }
  35.  
  36. void create_deck(card deck[])
  37. {
  38.     int temp_index=0;
  39.     for(int i=0;i<LEAR_LIST;i++)
  40.     {
  41.             for(int j=6;j<=MAX;j++)
  42.             {
  43.                 deck[temp_index].par=j;
  44.                 deck[temp_index].lear=65+i;
  45.                 temp_index++;
  46.             }
  47.     }
  48. }
  49.  
  50.  
  51. void take_card(card deck[], card hand[])
  52. {
  53.     time_t tm;
  54.     int t=time(&tm);
  55.     srand(tm);
  56.     int index=0;
  57.     for(int i=0;i<HAND_SIZE;i++)
  58.     {
  59.         index=rand()%(SIZE-1);
  60.         hand[i]=deck[index];
  61.     }
  62.        
  63. }
  64.  
  65. void print_hand (card hand[])
  66. {
  67.     for(int i=0;i<HAND_SIZE;i++)
  68.     {
  69.             switch (hand[i].par)
  70.         {
  71.             case 11:
  72.             printf("J"); break;  
  73.             case 12:
  74.             printf("D"); break;  
  75.             case 13:
  76.             printf("K"); break;  
  77.             case 14:
  78.             printf("A"); break;
  79.             default:
  80.             printf("%d", hand[i].par);
  81.             break;
  82.         }
  83.         switch (hand[i].lear)
  84.         {
  85.             case 65:
  86.             printf("\x06"); break;  //SPADE  
  87.             case 66:
  88.             printf("\x05"); break; //CLUB    
  89.             case 67:
  90.             printf("\x03"); break;  //HEART  
  91.             case 68:
  92.             printf("\x04"); break; //DIAMOND
  93.             default:
  94.             break;
  95.         }
  96.         printf ("  ");
  97.     }
  98. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement