Bonjour,
comme je te l ai deja dis 6 post avant, tant que tu ne recuperes pas le retour de ta fonction ajouter (ou faire une insertion en fait de chaine) t aura toujours le meme probleme
Bonjour,
comme je te l ai deja dis 6 post avant, tant que tu ne recuperes pas le retour de ta fonction ajouter (ou faire une insertion en fait de chaine) t aura toujours le meme probleme
Bonsoir,
Merci encore pour vos reponses.
J'ai fais exactement ce que diogene m'a dis sans bien comprendre car déjà je n'ai jamais vu 2 return en une seule fonctions...
Enfin bref, je laisse les questions pour plustard tant que ça marche pour le moment![]()
Rebonsoir,
En ce moment je suis dans l'idée pour que l'utilisateur puisse faire une rechèrche par code ou bien par nom dans les clients qui existent.
Ensuite pouvoir supprimer un client en entrant son nom.
Au début biensur ça devra lui donner désolé aucun client enregistrer/à supprimer..
Je trouve pas l'idée pour le faire meme en essayant avec cette fonction.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 t_client *recherche_code(t_client *c,char *CODE_CL) { char code_cl[10]; printf("Entrez le code du client que vous cherchez:"); fgets(code_cl,sizeof code_cl,stdin); if(code_cl(/*condition*/)) printf("Ce code client n'existe pas!!"); else /*....C'est dans ce else qu'il y a les problèmes, je trouve meme pas l'idée ou bien c'est très compliquer....*/ ................
La fonction reçoit en argument le début de la liste et le code à chercher.
Il faut parcourir la liste jusqu'à ce qu'on trouve le code ( et on renvoie alors le t_client * où on l'a trouvé) ou jusqu'à ce qu'on arrive à la fin de la liste (et on renvoie alors NULL pour dire qu'il n'a pas été trouvé). Pour comparer le code d'un client et le code cherché, utiliser strcmp() qui compare les chaînes de caractères. L'opérateur == comparerai lui les adresses des chaînes ce qui n'est pas le but.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 t_client *recherche_code(t_client *c,char *CODE_CL) { while(c != NULL && strcmp(c->code_cl ,CODE_CL) != 0) c = c->suivant; return c; }
Merci encore diogène..
Je galère depuis plus d'une heure pour pouvoir faire fonctionner la recherche mais j'y arrive pas !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 void recherche_code(t_client *c,char *CODE_CL) { t_client* tmp; tmp=c; char code_cl[10]; // while(c != NULL && strcmp(c->code_cl ,CODE_CL) != 0) printf("\nEntrez le code client que vous chercher:"); scanf("%s",&code_cl); if(strcmp(c->code_cl ,CODE_CL)) { printf("Nom: %s\n",tmp->nom); printf("Prenom: %s\n",tmp->prenom); printf("Code Client: %s\n",tmp->code_cl); printf("Tel: %s\n\n",tmp->tel); } else printf("Ce code n'existe pas!!"); system("pause"); }
Partager