Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
777 connectés 

  FORUM HardWare.fr
  Programmation
  C

  saisie d'un nombre

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

saisie d'un nombre

n°673376
nibbles1
Pour la gloire de NFT
Posté le 14-03-2004 à 18:38:13  profilanswer
 

voilà, je voudrais une fonction qui me lise un nombre au clavier (pas un chiffre)
 

Code :
  1. unsigned short saisieNombre(){
  2. unsigned short choix;
  3. do{
  4.  scanf("%d", &choix);
  5. }
  6. while (choix < 0 || choix > 65535);
  7. return(choix);
  8. }
  9. int main()
  10. {
  11. unsigned short c = saisieNombre();
  12. printf("%d\n", c);
  13. return(0);
  14. }


 
si je saisis un nombre, il me l'affiche bien, mais si je tappe par exemple "a", il affiche 52428...
 
j'ai un peu de mal à suivre là :heink:


Message édité par nibbles1 le 14-03-2004 à 18:38:48
mood
Publicité
Posté le 14-03-2004 à 18:38:13  profilanswer
 

n°673380
Taz
bisounours-codeur
Posté le 14-03-2004 à 18:40:42  profilanswer
 

et voilà, encore un erreur de format et une mauvaise utilisation de scanf
 
unsigned short -> %hu
 
et si le code de retour de scanf n'est pas bon, et bien on purge stdin (pourquoi pas jusqu'au prochain caractère d'espacement, on remets à zero les flags et on repart. ou alors, on lit à coup de fgets et on tente des conversion avec sscanf (méthode peut être plus simple)

n°673384
nibbles1
Pour la gloire de NFT
Posté le 14-03-2004 à 18:41:35  profilanswer
 

merci beaucoup ;)
 
reste dans le coin, on ne sait jamais [:boidleau]

n°673386
nibbles1
Pour la gloire de NFT
Posté le 14-03-2004 à 18:44:01  profilanswer
 

désolé de te faire chier mais je comprends pas "purge stdin" ni "remets à 0 les flags" (noob inside)

n°673387
Taz
bisounours-codeur
Posté le 14-03-2004 à 18:46:08  profilanswer
 

donc prends l'autre méthode


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  saisie d'un nombre

 

Sujets relatifs
nombre de jours ouvrablesFormat d'un nombre (Décimales)
[VB.NET] Incrémentation par nombre de saisienombre aléatoire
nombre d'enregistrements dans un sous formulaireDivision sous DOS: résultat en nombre décimal
Limiter le nombre de colonnes dans un diagramme Crystal ReportNombre maxi d'enregistrements dans un table
[ORACLE] Limiter le nombre de résultat d'une requetteTextarea: Peut on limiter la saisie du nombre de Caractere ?
Plus de sujets relatifs à : saisie d'un nombre


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR