{
int longueur = 0;
- while (L->suivant != NULL)
- {
+ while (L != NULL) {
L = L->suivant;
longueur++;
}
int longueur_rec(Liste L)
{
- /* ... */
+ if (L != NULL) {
+ return 1 + longueur_rec(L->suivant);
+ } else {
+ return 0;
+ }
}
void visualiser_iter(Liste L)
{
- /* ... */
+ int compteur = 0;
+
+ printf("--Debut--\n");
+ while (L != NULL) {
+ printf("L[%d]->value=%d\n", compteur, L->valeur);
+ L = L->suivant;
+ compteur++;
+ }
+ printf("--Fin--\n");
+}
+
+void _visualiser_rec(Liste L, int compteur)
+{
+ if (L != NULL) {
+ printf("L[%d]->value=%d\n", compteur, L->valeur);
+ compteur++;
+ _visualiser_rec(L->suivant, compteur);
+ if (compteur == (longueur_rec(L) - 1))
+ printf("--Fin--\n");
+ }
+
}
void visualiser_rec(Liste L)
{
- /* ... */
+ int compteur = 0;
+
+ if (compteur == 0)
+ printf("--Debut--\n");
+ _visualiser_rec(L, compteur);
}
int rechercher_iter(element e, Liste L)
{
int x;
Liste L = NULL;
+ L = ajouter_iter(2, L);
+ L = ajouter_iter(1, L);
+ L = ajouter_iter(3, L);
+ printf("Saisir un entier a ajouter a la liste L\n");
scanf("%d", &x);
L = ajouter_iter(x, L);
- printf("longueur=%d\n", longueur_iter(L));
+ printf("L a pour longueur %d\n", longueur_rec(L));
visualiser_iter(L);
+ visualiser_rec(L);
/* ... */
}