Annuaire en C

Fermé
OUmar DIAW - 14 mai 2014 à 12:09
sambia39 Messages postés 610 Date d'inscription vendredi 31 juillet 2009 Statut Membre Dernière intervention 9 février 2023 - 14 mai 2014 à 12:23
Bonjour,

Je voudrais faire un annuaire en c et j'ai des problèmes pour une fonction qui affiche la liste des contacts telephoniques Merci de m'aider
/* *********************************************************************** */
/* Programme en c d'un annuaire téléphonique ***************************** */
/* Réalisé et adapté par ************************************************ */
/* Oumar DIAW,étudiant UADB et Papa Aliooune FALL,étudiant à l'ESTM * */
/* Projet de langage C, année 2013-2014 *************************** */
/* Developpement Web et Génie Informatique Parcours Administration Réseaux-Telecom *********************************** */
/* ESTM Dakar,UADB,Bambey Sénégal *************************************************** */
/* *********************************************************************** */

#include<stdio.h>
#include<ctype.h>
#include<conio.h>
#include<stdlib.h>
#include<string.h>
/* Déclaration des structures*/
typedef struct Contact{
char Nom[15];
char Prenom[30];
char Numero[15];
}Contact;
typedef struct Contact_Ami{
char nom[15];
char prenom[30];
char portable[15];
char domicile[15];
char email[30];
char anniversaire[8];
char ville[20];
char adresse_postale[15];
}Contact_Ami;
//Déclaration des fonctions.
void Creer_repertoire(Contact *A,Contact_Ami *B,int n);
void ajouter_contact(Contact Nom[],Contact Prenom[],Contact Numero[],Contact_Ami nom[],Contact_Ami prenom[],Contact_Ami portable[],Contact_Ami domicile[],Contact_Ami email[],Contact_Ami anniversaire[],Contact_Ami ville[],Contact_Ami adresse_postale[],int n);
void afficher_contact(Contact Nom[],Contact Prenom[],Contact Numero[],Contact_Ami nom[],Contact_Ami prenom[],Contact_Ami portable[],Contact_Ami domicile[],Contact_Ami email[],Contact_Ami anniversaire[],Contact_Ami ville[],Contact_Ami adresse_postale[],int n);
void afficher_contact_Ami(Contact_Ami nom[],Contact_Ami prenom[],Contact_Ami portable[],Contact_Ami domicile[],Contact_Ami email[],Contact_Ami anniversaire[],Contact_Ami ville[],Contact_Ami adresse_postale[],int n);
void afficher_tri_contact(Contact Nom[],Contact Prenom[],Contact Numero[],Contact_Ami nom[],Contact_Ami prenom[],Contact_Ami portable[],Contact_Ami domicile[],Contact_Ami email[],Contact_Ami anniversaire[],Contact_Ami ville[],Contact_Ami adresse_postale[],int n);
void afficher_tri_contact_Ami(Contact_Ami nom[],Contact_Ami prenom[],Contact_Ami portable[],Contact_Ami domicile[],Contact_Ami email[],Contact_Ami anniversaire[],Contact_Ami ville[],Contact_Ami adresse_postale[],int n);
void recherche_contact(Contact Nom[],Contact Prenom[],Contact Numero[],Contact_Ami nom[],Contact_Ami prenom[],Contact_Ami portable[],Contact_Ami domicile[],Contact_Ami email[],Contact_Ami anniversaire[],Contact_Ami ville[],Contact_Ami adresse_postale[],int n);
void modifier_contact(Contact Nom[],Contact Prenom[],Contact Numero[],Contact_Ami nom[],Contact_Ami prenom[],Contact_Ami portable[],Contact_Ami domicile[],Contact_Ami email[],Contact_Ami anniversaire[],Contact_Ami ville[],Contact_Ami adresse_postale[],int n);
void supprimer_contact(Contact Nom[],Contact Prenom[],Contact Numero[],Contact_Ami nom[],Contact_Ami prenom[],Contact_Ami portable[],Contact_Ami domicile[],Contact_Ami email[],Contact_Ami anniversaire[],Contact_Ami ville[],Contact_Ami adresse_postale[],int n);
void vider_repertoire(Contact Nom[],Contact Prenom[],Contact Numero[],Contact_Ami nom[],Contact_Ami prenom[],Contact_Ami portable[],Contact_Ami domicile[],Contact_Ami email[],Contact_Ami anniversaire[],Contact_Ami ville[],Contact_Ami adresse_postale[],int n);
void Quitter();
void pause();


Contact *A;
Contact_Ami *B;

int main(){
int i,n;
Contact *Nom,*Prenom,*Numero;
A=(Contact*)malloc(n*sizeof(Contact));
Contact_Ami *nom,*prenom,*portable,*domicile,*email,*anniversaire,*ville,*adresse_postale;
B=(Contact_Ami*)malloc(n*sizeof(Contact_Ami));
int choix;
do{
//Affichage du menu
system("cls");
printf("\n");
printf(" ****************REPERTOIRE TELEPHONIQUE*************** \n");
printf("\n");
printf(" &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& \n");
printf("\n");
printf(" MENU DU REPERTOIRE TELEPHONIQUE \n");
printf(" ¦ [1] © Creer un repertoire ¦ \n");
printf(" ¦ [2] © Ajouter un contact ¦ \n");
printf(" ¦ [3] © Afficher les contacts ¦ \n");
printf(" ¦ [4] © Afficher les contacts avec trie ¦ \n");
printf(" ¦ [5] © Afficher les contacts Amis(e) ¦ \n");
printf(" ¦ [6] © Afficher les contacts Amis(e) avec trie ¦ \n");
printf(" ¦ [7] © Rechercher un contact ¦ \n");
printf(" ¦ [8] © Modifier un contact ¦ \n");
printf(" ¦ [9] © Supprimer un contact ¦ \n");
printf(" ¦ [10] © Vider le repertoire ¦ \n");
printf(" ¦ [0] © Quitter ¦ \n");
printf("\n");
printf(" &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& \n");
printf("\n");

//Demander un choix
printf("\t\t\t veuiller choisir une option: ");
scanf("%d",&choix);
fflush(stdin);
system("cls");
printf("\n");
switch(choix){
case 1:
printf(" Nouveau repertoire:\n");
Creer_repertoire(A,B,n);
break;

case 2:
printf("Nouveau contact:\n");
ajouter_contact(Nom,Prenom,Numero,nom,prenom,portable,domicile,email,anniversaire,ville,adresse_postale,n);
break;
case 3:
printf("Liste des contacts:\n");
afficher_contact(Nom,Prenom,Numero,nom,prenom,portable,domicile,email,anniversaire,ville,adresse_postale,n);
break;
case 4:
printf("liste des contacts triee:\n");
afficher_tri_contact(Nom,Prenom,Numero,nom,prenom,portable,domicile,email,anniversaire,ville,adresse_postale,n);
break;
case 5:
printf("Liste des contacts Amis(e):\n");
afficher_contact_Ami(nom,prenom,portable,domicile,email,anniversaire,ville,adresse_postale,n);
break;
case 6:
printf("liste de contacts Amis(e) avec trie:\n");
afficher_tri_contact_Ami(nom,prenom,portable,domicile,email,anniversaire,ville,adresse_postale,n);
break;
case 7:
printf("Recherche d'un contact:\n");
recherche_contact(Nom,Prenom,Numero,nom,prenom,portable,domicile,email,anniversaire,ville,adresse_postale,n);
break;
case 8:
printf("Modification d'un contact:\n");
modifier_contact(Nom,Prenom,Numero,nom,prenom,portable,domicile,email,anniversaire,ville,adresse_postale,n);
break;
case 9:
printf("Supression d'un contact:\n");
supprimer_contact(Nom,Prenom,Numero,nom,prenom,portable,domicile,email,anniversaire,ville,adresse_postale,n);
break;
case 10:
printf("Vider le repertoire:\n");
vider_repertoire(Nom,Prenom,Numero,nom,prenom,portable,domicile,email,anniversaire,ville,adresse_postale,n);
break;
case 0:
Quitter();
break;
default:
printf(" choix invalide ");

} printf("\nOperation avec succes...");

pause();// On appelle une fonction Pause() une fonction qui permet de revenir au menu en appuyant sur une touche quelconque du clavier.

}while(1);


getch();
return 0;
}
/*Definition des fonctions.*/
//Créer repertoire
void Creer_repertoire(Contact *A,Contact_Ami *B,int n)
{
int i;
do{
printf("Creer un repertoire: ");
scanf("%d",&n);
}while(n<0);

printf("\n");
}
//Ajout d'un contact
void ajouter_contact(Contact Nom[],Contact Prenom[],Contact Numero[],Contact_Ami nom[],Contact_Ami prenom[],Contact_Ami portable[],Contact_Ami domicile[],Contact_Ami email[],Contact_Ami anniversaire[],Contact_Ami ville[],Contact_Ami adresse_postale[],int n)
{
int i;
char Oui=1,Non=0;
do{
printf("Donner le nombre de contact à ajouter:");
scanf("%d",&n);
}while(n<0);
for(i=1;i<n;i++)
printf("Ce contact est-il ami:Oui/Non");
for(i=1;i<n;i++){
if(ajouter_contact==1){
printf("Nom:");
scanf("%s",&B[i].nom);
fflush(stdin);
printf("Prenom:");
scanf("%s",&B[i].prenom);
fflush(stdin);
printf("Portable:");
scanf("%s",&B[i].portable);
fflush(stdin);
printf("Domicile:");
scanf("%s",&B[i].domicile);
fflush(stdin);
printf("Email:");
scanf("%s",&B[i].email);
fflush(stdin);
printf("Anniversaire:");
scanf("%s",&B[i].anniversaire);
fflush(stdin);
printf("Ville:");
scanf("%s",&B[i].ville);
fflush(stdin);
printf("Adresse Postale:");
scanf("%s",&B[i].adresse_postale);
}

if(ajouter_contact==0){
printf("Nom:");
scanf("%s",&A[i].Nom);
fflush(stdin);
printf("Prenom:");
scanf("%s",&A[i].Prenom);
fflush(stdin);
printf("Numero:");
scanf("%s",A[i].Numero);
}
else
printf("Entrer Invalide!!");
}
// Affichage des contacts
void afficher_contact(Contact Nom[],Contact Prenom[],Contact Numero[],Contact_Ami nom[],Contact_Ami prenom[],Contact_Ami portable[],Contact_Ami domicile[],Contact_Ami email[],Contact_Ami anniversaire[],Contact_Ami ville[],Contact_Ami adresse_postale[],int n);
{
int i;
if(n>0)
for(i=1;i<n;i++){
printf("Nom: %s",A[i].Nom);
printf("Nom: %s",B[i].nom);
printf("Prenom: %s",A[i].Prenom);
printf("Prenom: %s",B[i].prenom);
printf("Numero: %s",A[i].Numero);
printf("Portable: %s",B[i].portable);
printf("Domicile: %s",B[i].domicile);
printf("Email: %s",B[i].email);
printf("Anniversaire: %s",B[i].anniversaire);
printf("Ville: %s",B[i].ville);
printf("Adresse Postale: %s",B[i].adresse_postale);

}
else
printf("Repertoire Vide!!");
getch();

}




}

1 réponse

sambia39 Messages postés 610 Date d'inscription vendredi 31 juillet 2009 Statut Membre Dernière intervention 9 février 2023 49
14 mai 2014 à 12:23
Bonjour,
Avant de pouvoir t'aider, il est préférable d'utiliser les balises
 <code c> 
</code> mise à ta disposition pour mieux formater et présenter ton code sources.
à bientôt
0