TP6: Add word printing to arbre-n-aire.c
authorJérôme Benoit <jerome.benoit@piment-noir.org>
Thu, 30 Mar 2017 12:59:10 +0000 (14:59 +0200)
committerJérôme Benoit <jerome.benoit@piment-noir.org>
Thu, 30 Mar 2017 12:59:10 +0000 (14:59 +0200)
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
TP6/arbres/arbre-n-aire/arbre_n_aire.c

index c10c6bfc6bbcaa06bfdfd3827385c180b87fab8d..63981b59fd024db4b7f67d555a295075a1dcf362 100644 (file)
@@ -84,7 +84,16 @@ void
 affiche (NOEUD * p, char *mot, int i)
 {
   /* i est l'indice de la lettre courante dans le mot */
-  /* TODO */
+  if (p != NULL)
+    {
+      mot[i] = p->lettre;
+      affiche (p->fils, mot, i + 1);
+      if (mot[i] == '\0')
+       {
+         printf ("%s\n", mot);
+       }
+      affiche (p->frere, mot, i);
+    }
 }
 
 /* Visualisation de l'arbre n-aire *******************************************/
@@ -167,8 +176,12 @@ main (int argc, char *argv[])
   gets (mot);
   printf ("\ninsertion de %s\n", mot);
   arbre = insere (arbre, mot, 0);
+  printf ("\naffichage mots:\n");
+  affiche (arbre, mot, 0);
   printf ("\naffichage arbre :\n");
   affiche_arbre (arbre, 0);
+  if (recherche (arbre, "toto", 0))
+    printf ("mot present\n");
   /* TODO */
 }