So I am currently creating a game of blackjack and I am found to be stuck. I am trying to deal out the cards between a computer and a user. I then want those cards to be set as part of the players hand until the round is over. Those cards are then removed from the deck until the deck is reshuffled after all 52 cards are used. I currently have a function that allows the deck to print cards. Any helpful methods of going about this?
Code:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h>


/*Prototypes*/
void intro (void);
void shuffle(int deck[], int array_size);
int start_deck(int initial[], int size);
void deal_card(int deck[], int size);
void first_deal(int deck[],int size);


/*Global Variables*/
int count=0;
int playsum=0;
int compsum=0;
int plycards[10];
int compcards[10];


int main(void)
    {
        int deck[52];
        int plycards[10];
        int compcards[10];


        srand(time(NULL));


        intro();
        shuffle(deck,52);


        deal_card(deck,52);
        getch();


    }


void intro(void)
    {
        printf("Welcome to the game called 31.\n");
        printf("The object of this game is to get exactly thirty one or as close as possible.\n");
        printf("Whoever gets a higher score that is less than 31 is the winner.\n");
        printf("If you or the computer exceeds 31, the opponent wins by default.\n");
        printf("If there is a tie, the computer wins by default.\n");
        printf("\n\nPress any key to continue...\n");
        getch();
        printf("\n\nThe deck reshuffles after all card have been dealt.\n");
        printf("J,Q,K all count as 10. An 'A' can count as an 11 or a 1.\n");
        printf("The basic premise of the game is that you want to have a hand value that is \ncloser to 31 than that of the dealer, without going over 31.\n");
        printf("\nHave Fun!!\n");
        printf("\nPress any key to play the game.");


        getch();
        system ("cls");


    }




int start_deck (int initial[],int size) //initializes the deck
    {
        int i;


        for (i=0; i<size; i++) //Used to increment 52 cards for deck
            initial[i]=i;
    }


void shuffle(int deck[], int array_size) //Shuffles deck
    {
        int i , j , temp ; //temp used to help shuffle


        start_deck(deck,52);


        for( i = 0 ; i < array_size ; i ++ )
            {
                j = rand() % array_size ; //chooses random number for the array swapping
                temp = deck[i] ;
                deck[i] = deck[j] ;
                deck[j] = temp ;
            }
    }


void deal_card(int deck[], int size) //Prints deck to window
    {
        int i,card;
        static int end=0;
        static int start=0;
        char suit[4][9]={"Diamonds","Hearts","Clubs","Spades"}; //Suit of the cards in deck
        char rank[13][6]={"2","3","4","5","6","7","8","9","10","Jack","Queen","King","Ace"}; //ranking of cards


        end=start+1;


         if (end == 53)
            {
                start=0;
                end=1;
                shuffle(deck,52);
                printf("\n\nThe deck ran out of cards and was re-shuffled.\n\n\n");
            }


            for (i=start; i<end; i++) //computes the rank and suit of each card in the deck
            printf("%s of %s\n",rank[deck[i]%13],suit[deck[i]/13]);


        start++;
    }