Exercice d'un cours C incorrect
Actuellement je suis un cours pour apprendre le langage C.
Le problème qui se pose à moi c'est que pour un exercice dont j'avais trouvé la même solution que dans l'exercice mais cela ne fonctionne pas.
Citation:
écrivez un programme qui lit la date du clavier et écrit les données ainsi que le nombre de données correctement reçues sur l'écran.
Exemple:
Introduisez la date (jour mois année): 11 11 1991
données reçues : 3
jour : 11
mois : 11
année : 1991
Voici ce que j'ai fais :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| #include <stdio.h>
int main()
{
int recu, jour, mois, annee;
printf("Entrez une date séparée par un espace (ex.: 20 05 1999) : ");
recu = scanf("%i %i %i", &jour, &mois, &annee);
printf("Nombre de données reçues : %i\n", recu);
printf("Jour : %i\nMois : %i\nAnnée : %i", jour, mois, annee);
return (0);
} |
Et la solution de l'exercice :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
#include <stdio.h>
main()
{
int JOUR, MOIS, ANNEE, RECU;
printf("Introduisez la date (JOUR, MOIS, ANNéE) : ");
RECU=scanf("%i %i %i", &JOUR, &MOIS, &ANNEE);
printf("\ndonnées reçues : %i\njour : %i\nmois :
%i\nannee : %i\n", RECU, JOUR, MOIS, ANNEE);
return 0;
} |
Mais le résultat donné n'est pas celui souhaité, les variables mois et annee lisent le premier et le 2ème chiffre de mois.
EDIT : Je viens de découvrir que le réel problème viens du fait que le programme fonctionne correctement mais dès que l'on met un 0 dans le mois le programme bug