Liste chainée - langage C
haktarus
-
haktarus -
haktarus -
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,
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,
A voir également:
- Liste chainée - langage C
- Liste déroulante excel - Guide
- Langage ascii - Guide
- Liste déroulante en cascade - Guide
- Langage binaire - Guide
- Site dangereux liste - Guide
3 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
Bonjour, je pense que tu dois simplement parcourir la liste et t’arrêter quand tu es arrivé au rang donné en paramètre.
je sais comment faire mais je ne sais pas quelle sont les différents fonctions à utiliser pour le faire.
bonsoir, pour cet exercice, dois-tu utiliser uniquement ces différentes fonctions, ou peux-tu écrire des fonctions supplémentaires?
peux-tu nous montrer ton programme colorisé et indenté?
peux-tu nous expliquer comment tu penses faire, sans choisir les fonctions à utiliser?
peux-tu déjà déclarer ta fonction, son type et ses paramètres?
j'avais suggéré de parcourir la liste et t’arrêter quand tu es arrivé au rang donné en paramètre. reconnais-tu dans le code que tu as partagé les instructions pour parcourir la liste? est-ce toi qui a écrit ce code?
peux-tu nous montrer ton programme colorisé et indenté?
peux-tu nous expliquer comment tu penses faire, sans choisir les fonctions à utiliser?
peux-tu déjà déclarer ta fonction, son type et ses paramètres?
j'avais suggéré de parcourir la liste et t’arrêter quand tu es arrivé au rang donné en paramètre. reconnais-tu dans le code que tu as partagé les instructions pour parcourir la liste? est-ce toi qui a écrit ce code?
Si la liste est trop courte ou vide je pense retourner NULL ou bien un message d'erreur disant trop court...
Toutefois pour le programme que je suis entrain de réaliser actuellement, je sais que je dépasserais pas la taille de la liste. Je suis entrain de réaliser un solveur du compte est bon.
Mais je bloque vraiment pour cette partie qui est cruciale, je pourrais essayer de comprendre plus tard, car je dois le finir avant ce soir.
Toutefois pour le programme que je suis entrain de réaliser actuellement, je sais que je dépasserais pas la taille de la liste. Je suis entrain de réaliser un solveur du compte est bon.
Mais je bloque vraiment pour cette partie qui est cruciale, je pourrais essayer de comprendre plus tard, car je dois le finir avant ce soir.
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;
}
}