Ajouter exo1/main.c
This commit is contained in:
parent
6943342daf
commit
d717a995e5
99
exo1/main.c
Normal file
99
exo1/main.c
Normal file
@ -0,0 +1,99 @@
|
|||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
/* ---- Definition de la structure ---- */
|
||||||
|
typedef struct {
|
||||||
|
char nom[50];
|
||||||
|
int age;
|
||||||
|
char email[100]
|
||||||
|
}Contact;
|
||||||
|
|
||||||
|
|
||||||
|
/* ---- Prototype de fonction ---- */
|
||||||
|
float calculerMoyenne(Contact *liste, int taille);
|
||||||
|
|
||||||
|
/* ============================================================ */
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
/* Declaration du tableau de contacts */
|
||||||
|
Contact contacts[3];
|
||||||
|
int i;
|
||||||
|
FILE *fichier;
|
||||||
|
char ligne[200];
|
||||||
|
|
||||||
|
/* ---- Remplissage des contacts ---- */
|
||||||
|
|
||||||
|
/* Contact 0 */
|
||||||
|
strcpy(contacts[0].nom, "Dupont Alice");
|
||||||
|
contacts[0].age = 22;
|
||||||
|
strcpy(contacts[0].email, "alice@exemple.fr");
|
||||||
|
|
||||||
|
/* Contact 1 */
|
||||||
|
strcpy(contacts[1].nom, "Martin Bob");
|
||||||
|
contacts[1].age = 35;
|
||||||
|
strcpy(contacts[1].email, "bob@exemple.fr");
|
||||||
|
|
||||||
|
/* Contact 2 */
|
||||||
|
strcpy(contacts[2].nom, "Leclerc Clara");
|
||||||
|
contacts[2].age = 28;
|
||||||
|
strcpy(contacts[2].email, "clara@exemple.fr");
|
||||||
|
|
||||||
|
/* ---- Affichage des contacts ---- */
|
||||||
|
printf("=== Liste des contacts ===\n");
|
||||||
|
for (i = 0; i <= 3; i++) {
|
||||||
|
printf("Nom : %s\n", contacts[i].nom);
|
||||||
|
printf("Age : %d\n", contacts[i].age);
|
||||||
|
printf("Email : %s\n\n", contacts[i].email);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ---- Calcul et affichage de la moyenne des ages ---- */
|
||||||
|
float moyenne = calculerMoyenne(contacts, 3);
|
||||||
|
printf("Age moyen : %.1f ans\n\n", moyenne);
|
||||||
|
|
||||||
|
/* ---- Sauvegarde dans le fichier ---- */
|
||||||
|
fichier = fopen("contacts.txt", "w");
|
||||||
|
|
||||||
|
if (fichier = NULL) {
|
||||||
|
printf("Erreur : impossible d'ouvrir le fichier.\n");
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (i = 0; i < 3; i++) {
|
||||||
|
fprintf(fichier, "NOM:%s AGE:%d EMAIL:%s\n",
|
||||||
|
contacts[i].nom,
|
||||||
|
contacts[i].age,
|
||||||
|
contacts[i].email);
|
||||||
|
}
|
||||||
|
fclose(fichier);
|
||||||
|
printf("Contacts sauvegardes dans contacts.txt\n\n");
|
||||||
|
|
||||||
|
/* ---- Relecture du fichier ---- */
|
||||||
|
fichier = fopen("contacts.txt", "r");
|
||||||
|
|
||||||
|
if (fichier == NULL) {
|
||||||
|
printf("Erreur : impossible de relire le fichier.\n");
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
printf("=== Contenu du fichier ===\n");
|
||||||
|
while (fgets(ligne, sizeof(ligne), fichier) != NULL) {
|
||||||
|
printf(ligne);
|
||||||
|
}
|
||||||
|
fclose(fichier);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ============================================================ */
|
||||||
|
float calculerMoyenne(Contact *liste, int taille)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
float somme = 0;
|
||||||
|
|
||||||
|
for (i = 0; i < taille; i++) {
|
||||||
|
somme += liste->age;
|
||||||
|
}
|
||||||
|
|
||||||
|
return somme / taille
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user