#include <iostream>
#include <vector>
#include <algorithm>
#include <ctime>

const char CARDS[] = { 'K', 'Q', 'J'};

unsigned const CARDS_SIZE =  sizeof(CARDS)/sizeof(char);

void printCards(std::vector<const char*>& cards);

int main()
{
    srand(time(0));
    std::vector<const char*> pCards;
    
    for ( unsigned i = 0; i < CARDS_SIZE; ++i)
    {
        pCards.push_back(&CARDS[i]);
    }
    for ( unsigned i =0 ; i < 5; ++i)
    {
        std::random_shuffle(pCards.begin(), pCards.end());
        printCards(pCards);
    }
    
    return 0;
}


void printCards(std::vector<const char*>& cards)
{
    std::vector<const char*>::iterator it;
    
    for (  it = cards.begin(); it != cards.end(); ++it)
    {
        std::cout << **it << " ";
    }
    std::cout << std::endl;
}