Verifier que l'utilisateur a bien saisi un nombre.

Signaler
Messages postés
13
Date d'inscription
vendredi 31 octobre 2008
Statut
Membre
Dernière intervention
22 mai 2009
-
Messages postés
13
Date d'inscription
vendredi 31 octobre 2008
Statut
Membre
Dernière intervention
22 mai 2009
-

3 réponses

Messages postés
13
Date d'inscription
vendredi 31 octobre 2008
Statut
Membre
Dernière intervention
22 mai 2009
2
Bonjour ,

dsl pour le premier message vide , une erreur de ma part.

Je fais un programme en mode console et je voudrais vérifier que l'uitlisateur a saisi un nombre . Mais je sais pas comment faire , pouvez m'aider ?

Je dois aussi tester que le nombre entrée est superieur à 0 . Mais avec se code jai un bug .

#include <stdio.h>
int main()
{

int tmp;

scanf("%d",&tmp);
while (tmp <= 0)
{ printf("Entrer une altitude supérieur à 0 \n");
scanf("%d",&tmp);
}
printf("%d\n",tmp);
return 0;
}

Quand je rentre un caractere j'obtiens une boucle infinie affichant "Entrer une altitude supérieur à 0" . Pourquoi.
Messages postés
1115
Date d'inscription
mercredi 15 juin 2011
Statut
Membre
Dernière intervention
6 mai 2021
4
Petite suggestion (peut-etre pas la meilleurs)

Passe tmp en chaine de caractère.
et apres ton scanf, fait un "strtoul". Si la fonction entre en erreur c'est que c'était pas un entier.

Mais il y a surement mieux et plus propre.
Messages postés
13
Date d'inscription
vendredi 31 octobre 2008
Statut
Membre
Dernière intervention
22 mai 2009
2
ok merci