Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1082 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Prblème sur les liste chainées

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Prblème sur les liste chainées

n°1644118
jusco
Posté le 16-11-2007 à 16:56:09  profilanswer
 

Bonjour à tous,
ca fait depuis septembre que j'ai commencé à apprendre la programmation en C. Comme vous allez vous en rendre compte, mon niveau est faible mais voila j'ai un projet à faire.
Il s'agit en fait de créer une sorte de répertoire où on entre le nom, prénom, téléphone ect....
Donc pour commencer, je dois créer une structure comportant toutes les indications (nom, prénom..).
Ne sachant pas combien de personne seront intégrés à mon répertoire, que dois voir du coté des listes chaines.
On n'est qu'au tout debut mais je bloque déjà et j'espere que vous pourrez m'aidez.

Code :
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. void AjoutMaillon(repertoire **p);
  4. typedef struct repertoire repertoire;
  5. struct repertoire
  6. {
  7.        char nom[50];
  8.        char prenom[50];
  9.        char telephone[50];
  10.        struct repertoire *precedent; //precedent pointe sur la structure precedente
  11. };
  12. int main(int argc, char *argv[])
  13. {
  14.     repertoire *pointSommet = NULL;
  15.     AjoutMaillon(&pointSommet);
  16.  
  17.     system("PAUSE" );
  18.     return 0;
  19. }
  20. void AjoutMaillon(repertoire **p)
  21. {
  22.      repertoire *nvlElement = malloc(sizeof(repertoire));
  23.    
  24.      printf("Entrez votre nom :" );
  25.      scanf("%s", (*nvlElement).nom);
  26.      printf("Entrez votre prenom :" );
  27.      scanf("%s", (*nvlElement).prenom);
  28.      printf("Entrez votre telephone :" );
  29.      scanf("%s", (*nvlElement).telephone);
  30.    
  31.      (*nvlElement).precedent = *p //adresse de l'element precedent pointé par pointeur p
  32.    
  33.      *p = nvlElement;        //p pointe sur le dernier element créé
  34. }


 
J'ai ici creé une structure "repertoire", la fonction AjoutMaillon qui me permet de demander a l'utilisateur d'entrez ses coordonnées et les enregistres dans la structure créé.
Je veux maintenant pouvoir afficher les donner que j'ai rentré dans la structure mais je ne vois pas vraiment comment m'y prendre.
J'ai me suis fortement inspiré des cours sur internet mais la plupart traitent des listes chainées ne gerant que les variable et non les chaines de caractères.  
J'espere que vous pourrez m'aider en étant si possible clair car j'ai du mal en programmation.
 
Merci d'avance

Message cité 1 fois
Message édité par jusco le 16-11-2007 à 17:30:41
mood
Publicité
Posté le 16-11-2007 à 16:56:09  profilanswer
 

n°1644204
poof65
Posté le 16-11-2007 à 18:55:18  profilanswer
 

Pour lire toutes les données dans ta liste chainée tu dois faire un boucle et tu t'arrête lorsque pTemp == NULL; (dans ta boucle pTemp = pTemp->precendent). Il faut utiliser pTemp pour pas perdre la valeur de p.
 
Pour afficher les chaines de caractères, rien de plus simple.
printf("%s", p->nom);

n°1644252
Sve@r
Posté le 16-11-2007 à 21:01:49  profilanswer
 

jusco a écrit :

J'ai me suis fortement inspiré des cours sur internet mais la plupart traitent des listes chainées ne gerant que les variable et non les chaines de caractères.


Quel que soit l'élément géré dans la liste, le principe de programmation ne change jamais !!!


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Prblème sur les liste chainées

 

Sujets relatifs
[DOS] Liste des comptes d'utilisateurObtenir liste des tables utilisées par les scripts php
Interface GTK2 - Fonction zoom sur listeliste menu associé a un panier
Passer une liste a une fonction?Generer une liste d'ip a partir d'un masque
recherche de liste de contrat entre deux datesSupprimer un element d'une liste chainee
valeur et zone de listelire le contenu du fichier d une liste
Plus de sujets relatifs à : Prblème sur les liste chainées


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR