[-mod- Tu as posté 4 messages avec le même titre. J'en ai supprimé 3].

bonjour !
j'ai un petit exercice sur les piles et j'ai besoin d'aide ben voila l'enonce :
-Ecrire une foction DECOMPOSE qui decompose un mot dans une liste, de point d'entree tete.
-Ecrire une fonction qui lit une suite de mots terminee par le mot VIDE, et construit une pile S contenant pour chaque mot, sa longueur et le lien vers sa decomposition.

pour la fonction DECOMPOSE c'est bon mais pour la pile non !
voila pour la pile j'ai essaye s'il y a une erreur vous me dites svp (2eme question)

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
 
#include <stdio.h>
#include <stdlib.h>
 
typedef struct elt { char info ;
                     struct elt *svt; } liste;
 
typedef struct {int taille;
                liste *lien; }st;
 
typedef struct elt2 { st info2;
                      struct elt2 *svt2; }pile;
 
liste *DECIOMPOSE(char *) //prototype de la fonction DECOMPOSE elle retourne la tete de la liste 
 
void CONSTR(pile **t)
{ int n;   char *ch;
  pile *s;
  scanf("%d",&n); //la longueur de la chaine
  ch=(char *)malloc(n);
  gets(ch);
while (ch[0]!='\0')  //mot vide
{ 
     (*t)=DECOMPOSE(ch);
     info2.taille=n;
     info.lien->svt=(*t);
     empiler(s,info2); //primitive, c'est une fonction qui ajoute un element 
     printf("entez une autre chaine :");
     scanf("%d",&n);
     ch=(char *)malloc(n);
gets(ch);
}
}