Insersion de notes pour un bulletin
Fermé
mbadih
-
Modifié par crapoulou le 8/11/2016 à 12:33
[Dal] Messages postés 6174 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 2 février 2024 - 8 nov. 2016 à 14:29
[Dal] Messages postés 6174 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 2 février 2024 - 8 nov. 2016 à 14:29
A voir également:
- Insersion de notes pour un bulletin
- Retrouver une musique avec les notes - Guide
- Modifier un bulletin scolaire pdf ✓ - Forum Graphisme
- Modifier un bulletin de salaire scanner - Forum scanner
- Bloc-notes (windows) - Télécharger - Traitement de texte
- Bloc notes gratuit - Télécharger - Agendas & Calendriers
1 réponse
[Dal]
Messages postés
6174
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
2 février 2024
1 083
Modifié par [Dal] le 8/11/2016 à 14:31
Modifié par [Dal] le 8/11/2016 à 14:31
Salut mbadih,
Le spécificateur de format
vois http://www.cplusplus.com/reference/cstdio/scanf/
A format specifier for scanf follows this prototype:
%[*][width][length]specifier
et les tableaux qui suivent.
Ce qui ne va pas sur scanf :
- avec scanf, tu ne peux pas mettre de point (contrairement à printf, qui a ses propres formats, qui sont différents de ceux de scanf)
- cela n'a aucun sens de mettre 0 en tant que "width", car cela signifie que tu ne lis, en fait, aucun caractère.
- le "length" dans scanf n'est pas un nombre, mais un spécificateur de taille (vois le tableau de la doc)
- il n'y a qu'un seul %, qui est au début, "specifier" est en dernier et est un spécificateur de type (vois le tableau de la doc) ... il n'y a d'ailleurs pas non plus de % en fin d'expression pour printf ...
- tu devrais enlever l'espace en fin de format, car sinon il va consommer ton retour à la ligne, or, tu en as besoin pour arrêter la saisie
- quant à l'espace en début, que tu as mis parfois, je le supprimerai aussi, mais dans ton cas il n'aura pas vraiment d'impact
Le fait que ton programme compile sans erreur fatale, ne signifie pas qu'il est sans erreurs. En compilant avec les warnings, ton compilateur va se plaindre. Il ne faut pas ignorer les avertissements, ils attirent l'attention sur ce qui est, la plupart du temps, une erreur. Il faut comprendre pourquoi ils se manifestent, et en éliminer la cause.
La prochaine fois, tiens compte de ces warnings et cherche par toi même avec une documentation de référence. Si tu ne trouves vraiment pas pourquoi ils se manifestent, demande de l'aide ici :-)
Enfin :
- ta fonction main doit renvoyer un entier
- double est préféré à float par la bibliothèque standard, alors il est des personnes qui en recommandent l'utilisation par défaut pour des nombres à virgule, sauf cas particuliers nécessitant vraiment un float
- c'est une mauvaise habitude de créer des variables globales
Dal
Le spécificateur de format
" %0.02%f "est erroné pour scanf (et même pour printf en fait).
vois http://www.cplusplus.com/reference/cstdio/scanf/
A format specifier for scanf follows this prototype:
%[*][width][length]specifier
et les tableaux qui suivent.
Ce qui ne va pas sur scanf :
- avec scanf, tu ne peux pas mettre de point (contrairement à printf, qui a ses propres formats, qui sont différents de ceux de scanf)
- cela n'a aucun sens de mettre 0 en tant que "width", car cela signifie que tu ne lis, en fait, aucun caractère.
- le "length" dans scanf n'est pas un nombre, mais un spécificateur de taille (vois le tableau de la doc)
- il n'y a qu'un seul %, qui est au début, "specifier" est en dernier et est un spécificateur de type (vois le tableau de la doc) ... il n'y a d'ailleurs pas non plus de % en fin d'expression pour printf ...
- tu devrais enlever l'espace en fin de format, car sinon il va consommer ton retour à la ligne, or, tu en as besoin pour arrêter la saisie
- quant à l'espace en début, que tu as mis parfois, je le supprimerai aussi, mais dans ton cas il n'aura pas vraiment d'impact
Le fait que ton programme compile sans erreur fatale, ne signifie pas qu'il est sans erreurs. En compilant avec les warnings, ton compilateur va se plaindre. Il ne faut pas ignorer les avertissements, ils attirent l'attention sur ce qui est, la plupart du temps, une erreur. Il faut comprendre pourquoi ils se manifestent, et en éliminer la cause.
La prochaine fois, tiens compte de ces warnings et cherche par toi même avec une documentation de référence. Si tu ne trouves vraiment pas pourquoi ils se manifestent, demande de l'aide ici :-)
Enfin :
- ta fonction main doit renvoyer un entier
- double est préféré à float par la bibliothèque standard, alors il est des personnes qui en recommandent l'utilisation par défaut pour des nombres à virgule, sauf cas particuliers nécessitant vraiment un float
- c'est une mauvaise habitude de créer des variables globales
Dal