IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Création d'une liste chainée


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Student
    Inscrit en
    Novembre 2018
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Student

    Informations forums :
    Inscription : Novembre 2018
    Messages : 35
    Par défaut Création d'une liste chainée
    Bonjour les ami(e)s :
    j'ai un problème dans une fonction qui cree une liste chainnee , voici le code :
    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
     
    #include<stdio.h>
    #include<stdlib.h>
    typedef struct noeud {
      char c ;
      struct noeud* next ;
    }Noeud ;
     
    typedef Noeud* car ;
     
    car getNode(){
          car cellule=malloc(sizeof(Noeud)) ;
              puts("give me the data :  ");
              scanf("%c",&cellule->c);
              cellule->next=NULL;
          return cellule;
    }
     
    car creatList(int n){
        int i;
        car listhead,temp;
        listhead=malloc(sizeof(Noeud));
        listhead=getNode();
        temp=listhead;
        for(i=1;i<n;i++){
            temp->next=getNode();
            temp=temp->next;
        }
        return listhead;
     
    }
     
    car ajouterEnFin(car T,char x){
        car temp=malloc(sizeof(Noeud));
        temp=T;
        while(temp) temp=temp->next;
        Noeud data ;
        data.c=x;
        data.next=NULL;
        temp=&data;
        return T ;
    }
     
    car ajouterEnTete(car T, char x){
          Noeud data ;
          data.c=x;
          data.next=T;
          T=&data;
          return T;
    }
     
    int longueur(car T){
        car temp=T;
        int s=1;
        temp=malloc(sizeof(Noeud));
        while(temp){
            temp=temp->next;
            s++;
        }
        return s;
    }
     
    void affichage(car temp){
      while(temp){
        printf("%c\t",temp->c);
        temp=temp->next;
      }
      printf("\n");
    }
     
    int main(int argc, char const *argv[]) {
      int n;
      printf("give the length of the list : \t");
      scanf("%d",&n);
      car listhead,temp;
      listhead=creatList(n);
     
     
     
     
      return 0;
    }
    les fonctions qui constuisent une liste sont getNode() et creatList ..
    j'ai pas pu remarque mon erreur .. et Merci

  2. #2
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2008
    Messages
    26 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2008
    Messages : 26 772
    Par défaut


    Quand tu dis que tu as un problème, ça veut dire quoi, exactement ? Ça ne compile pas, ça plante à l'exécution ?
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  3. #3
    Membre averti
    Homme Profil pro
    Student
    Inscrit en
    Novembre 2018
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Student

    Informations forums :
    Inscription : Novembre 2018
    Messages : 35
    Par défaut
    Quand je saisie 2 par exemple ( la longueur de la chaine ) il me demande de saisir une seul donnee avec deux affichages .. donc l'erreur est dans ces deux fonctions getNode() et creatList(n) .

  4. #4
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2008
    Messages
    26 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2008
    Messages : 26 772
    Par défaut
    J'aurais tendance à incriminer cette boucle :

    Si tu la déroules pour n = 2, tu n'auras effectivement qu'une seule itération. C'est plus courant de la faire débuter à i = 0 (ou alors tu utilises la condition i <= n, mais c'est souvent considéré comme du "code crade").
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  5. #5
    Membre averti
    Homme Profil pro
    Student
    Inscrit en
    Novembre 2018
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Student

    Informations forums :
    Inscription : Novembre 2018
    Messages : 35
    Par défaut
    le probleme ce n'est pas dans la longueur .. execute le si t'as le temps pour que tu me comprends .. Merci en tous cas

  6. #6
    Membre averti
    Homme Profil pro
    Student
    Inscrit en
    Novembre 2018
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Student

    Informations forums :
    Inscription : Novembre 2018
    Messages : 35
    Par défaut
    le probleme resolu .. un espace avant le %c dans la fonction scanf .. question de buffer ext ...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. création d'une liste chainé de processus
    Par katiii dans le forum Général Java
    Réponses: 5
    Dernier message: 07/12/2007, 10h45
  2. [generic] pb création d'une List []
    Par yoplaboom dans le forum Langage
    Réponses: 6
    Dernier message: 08/07/2005, 13h01
  3. manipulation d'une liste chainé
    Par sorari dans le forum C++
    Réponses: 1
    Dernier message: 16/03/2005, 12h32
  4. Création d'une liste ...
    Par keryss dans le forum Access
    Réponses: 6
    Dernier message: 21/10/2004, 09h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo