Utilise fgetc() pour récupérer le premier caractère entré par l'utilisateur et le traiter.
Ensuite tu vérifies s'il y a des caractères en trop, et tu agis en conséquence (genre "mauvais choix" ou autre), puis tu vides le buffer.
Et oublie scanf(), cette fonction ne fait pas ce que tu crois.