Forum Clubic

Generer des lettres aleatoires en C

Salut…
Est qu il y a un equivalent pour les lettres de ce que ceci est pour les chiffres?

void initArr(int ar[])
{
int i;
srand((unsigned)time(NULL));
for(i=0;i<SIZE;i++)
{
ar[i] = rand()%50;
}
}

Merci


int i;
unsigned char ar[SIZE];
    
    srand((unsigned)time(NULL));
    for(i=0;i<SIZE;i++)
    {
      ar[i] = 'A'+rand()%26;
      printf("caractère %c\n",ar[i]);
    }

Une lettre est un caractère donc un chiffre.

Merci… j etais arrive a la mm conclusion, mais j esperais qlq chose de plus "simple" :slight_smile:

Bon… du coup j ai fait comme ca: (pour avoir les majuscules et minuscules)

void initArr(char ar[])
{
int i=0,num;
srand((unsigned)time(NULL));
while(i<SIZE)
{
num = rand()%58;
if(num < 26 || num > 32)
{
ar[i] = ‘A’ + num;
i++;
}
}
}

Merci A+.

Prend celle de Karl, c’est mieux.

Peut etre mais ca me limite aux majuscules

Même principe dans ce cas :slight_smile: Voir mieux : tu peux jouer sur ton nombre aléatoire pour avoir un premier cas qui te donne la lettre à laquelle tu somme n % 26