ok, voici un extrait du code avec fonction atoi
char buffer[3];
int nombre;
do
{
printf ("Un nombre entre 5 et 15 SVP : " );
fgets (buffer, 3, stdin);
nombre = atoi(buffer);
} while (nombre < 5 || nombre > 15);
détails : tu déclare un petit tableau qui récupère la saisie telle qu'elle est, de l'int ou du char ou ce que tu veux, peu importe
fgets (buffer .....), c'est la récupération de la saisie dont je parle, tu ne récupères que (2+1) caractères (+1 pour le '\0'), le surplus va dans stdin, ça n'est pas pris en cpte dans ton prog'
nombre = atoi(buffer)
là, ça renvoit (si le contenu de buffer est un int) dans nombre la valeur numérique
si le type tape pour rigoler 'cc', la fonction atoi va retourner 0 dans nombre, le type se fait jeter. Si le type tape (encore pour ricaner bêtement) 5.75, ça ne prendra que 5 et ça passe