#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
 
int main(int argc, char **argv)
{
int conta_jugador, conta_carta, aux, repartidas[40], cartas[4][4];
char palos[4][20], figuras[3][20];
 
sprintf(palos[0], "Oros");
sprintf(palos[1], "Copas");
sprintf(palos[2], "Espadas");
sprintf(palos[3], "Bastos");
 
sprintf(figuras[0], "Sota");
sprintf(figuras[1], "Caballo");
sprintf(figuras[2], "Rey");
 
 
srand(time(NULL));
 
for(aux=0; aux<40; aux++)
    repartidas[aux]=0;
    
 
//Repartimos las cartas "de una en una" (como se haría normalmente)
for(conta_carta=0; conta_carta<4; conta_carta++)
{
 
for(conta_jugador=0; conta_jugador<4; conta_jugador++)
{
 
    do{
    aux=rand()%40;
    }while(repartidas[aux]);
    
    repartidas[aux]=1;
    
    cartas[conta_jugador][conta_carta]=aux;
    
}
 
}
 
 
//Mostramos por pantalla las cartas de cada jugador
for(conta_jugador=0; conta_jugador<4; conta_jugador++)
{
 
printf("\n\nJugador %d:", conta_jugador+1);
 
for(conta_carta=0; conta_carta<4; conta_carta++)
{
 
aux=cartas[conta_jugador][conta_carta]%10;
 
 if(aux<7)
     printf("\n%d de %s", aux+1, palos[cartas[conta_jugador][conta_carta]/10]);
 else
     printf("\n%s de %s", figuras[aux-7], palos[cartas[conta_jugador][conta_carta]/10]);
 
}
 
}
 
return 0;
}