Exercice langage C: Base de données

Dans cet exercice, vous allez écrire un programme permettant de gérer une petite base de données de numéros de téléphone.

  1. Commencez par définir une structure Personne dont les champs seront une chaîne de caractères pour le nom et une autre pour le numéro de téléphone.
  2. Déclarez une variable de type Personne dans main puis initialisez-la en demandant à l'utilisateur d'entrer un nom et un numéro de téléphone. Faites afficher ensuite le nom et le numéro de téléphone contenus dans la structure: Le numero de Pierre est 123456. 
  3. Ecrivez maintenant une fonction nouveau_numero qui reçoit un pointeur sur Personne en paramètre. La fonction doit demander à l'utilisateur d'entrer un nouveau nom ainsi que le numéro de téléphone correspondant. Elle placera les nouvelles valeurs dans le pointeur passé en paramètre. Il faut aussi s'assurer que le nom commence bien par une majuscule, et modifier le nom en conséquence si ce n'est pas le cas.
  4. Ecrivez maintenant une fonction recherche qui reçoit un tableau de Personne ainsi que sa taille en paramètres. La fonction doit demander à l'utilisateur le nom qu'il désire chercher puis effectuer une recherche dans le tableau de personne. Si le nom est trouvé, la fonction affichera le numéro de téléphone de la personne, sinon elle imprimera un message d'erreur.
  5. Ecrivez une troisième fonction, nommée liste, qui prend un tableau de Personne ainsi que la taille du tableau en paramètres. Comme son nom l'indique, cette fonction affichera la liste de toutes les valeurs présentes dans le tableau.
  6. Finalement, écrivez la fonction main (vous pouvez supprimer le code écrit au point 2). Il vous faudra tout d'abord déclarer un tableau de Personne qui sera votre base de données. Ensuite, une boucle while affichera le menu suivant 1) Nouveau numero 2) Recherche 3) Liste 4) Quitter

    et attendra une entrée de l'utilisateur. Une fois que l'utilisateur a entré son choix, il ne vous restera plus qu'à appeler la bonne fonction.

#include
using namespace std;
struct Personne {
char nom[32];
char numero[32];
};
void nouveau_numero(Personne *nouveau) {
cout cout cin >> nouveau->nom;
cout cin >> nouveau->numero;
if (nouveau->nom[0] >= 'a' && nouveau->nom[0] nouveau->nom[0] += 'A' - 'a'; // majuscule
}
void recherche(Personne *db, int taille) {
char search[32];
cout cin >> search;
int index = 0;
while (index index++;
if (index cout else
cout }
void liste(Personne *db, int taille) {
cout for (int i=0; icout cout }
int main(int argc, char **argv) {
const int max_adresses = 20;
Personne db[max_adresses];
int nombre_adresses = 0;
bool fin = false;
char choix;
do {
cout cout cout cout cin >> choix;
switch (choix) {
case '1':
if (nombre_adresses nouveau_numero(db + nombre_adresses);
nombre_adresses++;
}
else
cout break;
case '2':
recherche(db, nombre_adresses);
break;
case '3':
liste(db, nombre_adresses);
break;
case '4':
fin = true;
break;
}
} while (!fin);
return 0;
}

Article publié le 17 Mars 2012 Mise à jour le Lundi, 07 Novembre 2022 09:53 par BENKIRANE Fatima Ezzahra