1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
//fonction Verlan
// mot: char à rotationner
// tom: char rotationné
// lg : nombre de rotation
void Verlan(const char mot[50], char tom[50],unsigned int lg)
{
BYTE i,j;
char interm[50];
// vérification du paramètre lg pour éviter les débordements
if(lg > strlen(mot))
{
lg = strlen(mot);
}
// on remplit la variable intermédiare et la destination avec des 0
memset(interm, '\0', sizeof(interm));
memset(tom, '\0', sizeof(tom));
// calcul du mot inversé
strcpy((char*)tom,(char*)mot);
do
{
for(i=0;i<(strlen(mot)-1);i++)
{
interm[strlen(mot)-1]=tom[0];
interm[i]=tom[i+1];
}
strcpy((char*)tom,(char*)interm);
lg--;
}while(lg > 0);
} |
Partager