Les listes chaînées C HELP

Bonjour,

SVP je veux définir ces 2 fonctions :

- la fonction qui affiche le contenu d'une liste chaînée dans l'ordre inverse de la liste .

- la fonction qui lit une série de prénoms et les insère dans une liste dans l'ordre de la lecture .

et merci d'avance ^^

3 réponses

  1. Contributeur
    Bonjour,

    Et en quoi pouvons-nous t'aider ?
    Nous voyons pas ton code pour t'aider, nous savons pas ce qui te pose problème. Faut être plus précis si tu veux obtenir de l'aide.
    1. le problème c'est que j'arrive pas à définir ces 2 fonctions par ce que chui un debutant et je viens d'entamer la formation sur les listes chainées :/
      1. Contributeur
        Cela ne nous explique pas ce qui te bloque...
        Déjà, tu peux commencer par créer la structure, etc.
        Tu as des tuto sur le forum. Montre-nous ce que tu as commencé et dis-nous ce que tu comprends pas.
      2. uii justement j'ai deja creer la structure et j'ai définit les fcts initialisation ,insertion et suppression , il me reste juste de definir les 2 fcts que je vous ai demandé .
      3. Contributeur
        Mais comme les deux fonctions dépendent de ce que tu as fait et que tu nous montres pas, on peut pas aller bien loin.
        Et on ne sait toujours pas ce que tu comprends pas.
      4. je comprend pas comment on va commencer de lire une liste par la fin
    2. donc voila ce que j'ai fait

      typedef struct Element Element;
      struct Element
      {
      int nombre;
      Element *suivant;
      };

      typedef struct Liste Liste;
      struct Liste
      {
      Element *premier;
      };

      Liste *initialisation()
      {
      Liste *liste = malloc(sizeof(*liste));
      Element *element = malloc(sizeof(*element));
      if (liste == NULL || element == NULL)
      {
      exit(EXIT_FAILURE);
      }
      element->nombre = 0;
      element->suivant = NULL;
      liste->premier = element;
      return liste;
      }

      void insertion(Liste *liste, int nvNombre)
      {
      /* Création du nouvel élément */
      Element *nouveau = malloc(sizeof(*nouveau));
      if (liste == NULL || nouveau == NULL)
      {
      exit(EXIT_FAILURE);
      }
      nouveau->nombre = nvNombre;
      /* Insertion de l'élément au début de la liste */
      nouveau->suivant = liste->premier;
      liste->premier = nouveau;
      }