Deux types principaux sont utilisés :
-
Liste chaînée de numéros de téléphone
- Chaque nœud contient :
number: chaîne de caractères pour le numéronext: pointeur vers le numéro suivant
- Chaque nœud contient :
-
Liste chaînée de contacts (annuaire)
- Chaque contact contient :
nom: nom de la personneprenom: prénom de la personnelien: type de lien (amis, famille, collègues, etc.)phones: pointeur vers la liste chaînée de numérosnext: pointeur vers le contact suivant dans l’annuaire
- Chaque contact contient :
L’annuaire est donc une liste chaînée où chaque contact possède sa propre liste de numéros.
Le programme permet de :
- Ajouter un contact avec un ou plusieurs numéros.
- Rechercher un contact par nom et prénom.
- Modifier les informations d’un contact (nom, prénom, lien).
- Supprimer un contact de l’annuaire.
- Sauvegarder l’annuaire dans un fichier texte.
- Charger l’annuaire à partir d’un fichier texte.
- Fusionner les contacts en double (même nom et prénom, en regroupant les numéros).
- Créer un sous-carnet de contacts selon un critère (ex. uniquement les “amis” ou uniquement la “famille”).
Nom: DOE, Prenom: John, Lien: collegues, Numeros: 021998877 Nom: BENSALAH, Prenom: Abdeslam, Lien: amis, Numeros: 0770112233 0550000000
Apres fusion des doublons: Nom: BENSALAH, Prenom: Abdeslam, Lien: amis, Numeros: 0550000000 0770112233 0661000000 Nom: DOE, Prenom: John, Lien: collegues, Numeros: 021998877
Sous-carnet (amis): Nom: BENSALAH, Prenom: Abdeslam, Lien: amis, Numeros: 0661000000 0770112233 0550000000
Annuaire charge depuis le fichier: Nom: DOE, Prenom: John, Lien: collegues, Numeros: 021998877 Nom: BENSALAH, Prenom: Abdeslam, Lien: amis, Numeros: 0661000000 0770112233 0550000000