Bonsoir, j'ai un problème tout simple, que je n'arrive pas à résoudre.
Je souhaiterais créer une fonction permettant de retourner le contenu de ma liste chainée à un rang donné en paramètre. Comme lorsque l'on fait tab[i] avec un tableau.
Merci de votre aide,
J'avais réalisé ceci auparavant en m'aidant d'un site :
je précise que je sais comment procéder, mais je ne sais pas l'écrire en langage C
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 typedef struct element element; struct element { int val; struct element *nxt; }; typedef element* llist; llist add(llist liste, int valeur) { element* nouvelElement = malloc(sizeof(element)); nouvelElement->val = valeur; nouvelElement->nxt = NULL; if(liste == NULL) { return nouvelElement; } else { element* temp=liste; while(temp->nxt != NULL) { temp = temp->nxt; } temp->nxt = nouvelElement; return liste; } } int size(llist liste) { if(liste == NULL) return 0; return size(liste->nxt)+1; } void disp(llist liste) { element *tmp = liste; while(tmp != NULL) { printf("%d ", tmp->val); tmp = tmp->nxt; } }
Partager