jasinski13 | mon fichier: main.c
Code :
- #include <stdio.h>
- #include <stdlib.h>
- #include "main.h"
- #define TAILLE_MAX 10
- int main()
- {
- char chaine[TAILLE_MAX];//1. crée une chaine vide de 100 caractères
- long age = 0;
- double poids = 0;
- printf("Comment vous vous appelez? " );//2. demande le nom
- lire(chaine, TAILLE_MAX);//3. Appelle de la fonction lire
- printf("Ha vous vous appellez %s!", chaine);//12. execution
- printf("\n\nQuelle age as-tu? " );
- age = lireLong();
- printf("Vous avez %d ans\n\n", age);
- printf("\n\ncombien peses-tu? " );
- poids = lireDouble();
- printf("Tu peses %f kilos\n\n", poids);
- }
|
mon fichier string.c:
Code :
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #include "string.h"
- void viderBuffer()
- {
- int c = 0;
- while(c != '\n' && c != EOF)
- {
- c = getchar();
- }
- }
- int lire(char* chaine, int taille)// 4. fonction lire
- {
- char *positionEntree = NULL;// 5. initialisation d'un caractere(pointeur)
- if(fgets(chaine, taille, stdin) != NULL)// 6. Si la saisie se faite sans erreur, c'est celui là qui demande le nom ;-)
- {
- positionEntree = strchr(chaine, '\n');// 7. le caractère prend la valeur de \n (retour à la ligne)
- if(positionEntree != NULL)// 8. si on a trouvé le reotur à la ligne
- {
- *positionEntree = '\0';//9. on remplace ce caractère par \0
- }
- else
- {
- viderBuffer();
- }
- return 1;//10. renvoi 1 si vrai
- }
- else
- {
- viderBuffer();
- return 0;//11. renvoi 0 si faux
- }
- }
- long lireLong()
- {
- char nombreTexte[100] = {0};
- if(lire(nombreTexte, 100))
- {
- return strtol(nombreTexte, NULL, 10);
- }
- else{return 0;}
- }
- double lireDouble()
- {
- char nombreTexte[100] = {0};
- if (lire(nombreTexte, 100))
- {
- return strtod(nombreTexte, NULL);
- }
- else
- {
- return 0;
- }
- }
|
mon fichier string.h
Code :
- int lire(char* chaine, int taille);
- void viderBuffer();
- long lireLong();
- double lireDouble();
|
Voilà mon code complet, bien séparés comme j'ai appris sur internet merci d'avance
|