Prova questo:
for (i = 0; i < 8; i++) {
int valido = 0;
do {
lettere[i] = '0' + rand() % 'z';
if (lettere[i] > '0' && lettere[i] < '9'
|| lettere[i] > 'a' && lettere[i] < 'z'
|| lettere[i] > 'A' && lettere[i] < 'Z')
valido = 1;
} while(!valido);
}
Crea password lunghe 8 caratteri usando lettere maiuscole, minuscole e numeri. I simboli non li ho messi che non so quali vuoi.