Prêt
Instructions Difficile

Gestionnaire de contacts

Structures · 🚀 Projet

L'objectif est de comprendre et compléter un programme qui gère une liste de contacts.

Étape 1 : Comprendre le code

Lis le code ci-dessous et identifie :

  • La structure Contact et ses trois membres
  • Comment on remplit un contact avec strcpy (pour le texte) et = (pour les nombres)
  • Comment la fonction afficherContact utilise l'opérateur point

Étape 2 : Taper et tester

Recopie ce code dans le compilateur en ligne et exécute-le.

#include <stdio.h>
#include <string.h>

typedef struct {
    char nom[50];
    char telephone[15];
    int age;
} Contact;

void afficherContact(Contact c)
{
    printf("Nom: %s\n", c.nom);
    printf("Tel: %s\n", c.telephone);
    printf("Age: %d ans\n", c.age);
    printf("---\n");
}
int main(void)
{
    // Tableau de contacts
    Contact carnet[3];

    // Remplir le premier contact
    strcpy(carnet[0].nom, "Alice");
    strcpy(carnet[0].telephone, "0612345678");
    carnet[0].age = 14;

    // Remplir le deuxième
    strcpy(carnet[1].nom, "Bob");
    strcpy(carnet[1].telephone, "0687654321");
    carnet[1].age = 15;

    // Remplir le troisième
    strcpy(carnet[2].nom, "Charlie");
    strcpy(carnet[2].telephone, "0611223344");
    carnet[2].age = 13;

    // Afficher tous les contacts
    printf("=== CARNET D'ADRESSES ===\n");
    for (int i = 0; i < 3; i++) {
        afficherContact(carnet[i]);
    }

    return 0;
}

Étape 3 : Améliorer

Ajoute une fonction chercherContact qui prend le carnet, sa taille et un nom, et affiche le contact correspondant (ou un message si non trouvé).

Indice : utilise strcmp(a, b) de <string.h> pour comparer deux chaînes. Elle renvoie 0 si elles sont identiques.

ÉDITEUR
SORTIE
Appuie sur Ctrl+Entrée pour compiler et exécuter.