Probleme lors de la saisie de données pour mon répertoir

Signaler
Messages postés
2
Date d'inscription
samedi 29 janvier 2005
Statut
Membre
Dernière intervention
2 avril 2005
-
Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
-
Bonjour a tous, j'ai un petit probleme avec mon programme en C. Lors de l'affichage des données saisies, le nom et le numero de telephone ne forment qu'un. Ou est mon probleme? Merci d'avance !!!

voici le programme

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


struct entry
{
char fnom[20];
char pnom[20];
char phone[10];
};


struct entry list[50];



struct entry *p_list;





int i,nbre;


int comp(const void *s1, const void *s2);


main()
{
p_list=list;


clrscr();
printf("entrez le nombre de personnes :");
scanf("%d",&nbre);


for(i=0;i<nbre;i++)
{
printf(" \nEntrez le nom : ");
scanf("%s",list[i].fnom);


printf("Entrez le pr‚nom: ");
scanf("%s",list[i].pnom);
printf("Entrez le num‚ro de t‚l‚phone (xxxxxxxx) : ");
scanf("%s",list[i].phone);
}


qsort(list, nbre, sizeof(list[0].fnom) , comp);



for(i=0;i<nbre;i++)
{
printf(" \n \nContact : %s %s",list[i].pnom,list[i].fnom);
printf(" \t \tPhone: %s \n",list[i].phone);
}


}


int comp(const void *s1, const void *s2)
{
return (strcmp(*(char **)s1, *(char **)s2));
}

1 réponse

Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
Je pense que c'est ton tri qui foire

qsort(list, nbre, sizeof(struct entry) , comp);
=> permet de trier les structures de la liste

int comp(const void *s1, const void *s2)
{
return (strcmp(((struct entry*)s1)->fnom, ((struct entry*)s2)->fnom));
}
=> tri les structure selon le champ nom.