Bonsoir à tous.
J'aimerai implémenter un algorithme qui, étant donnés une liste chaînée L et deux entiers a et n, retourne une liste chaînée identique à L mis à part le n-ème élément qui est remplacé par la valeur a.
J'utilise la structure suivante :
Code:struct cellule { int valeur; struct cellule *suivant; }; typedef struct cellule *liste;
A priori, il faut utiliser un pointeur qui parcours la liste chaînée jusqu'à l'élément souhaité pour le modifier. J'ai écris quelque chose comme ça pour le moment mais, j'ai quelques soucis avec les pointeurs. Je ne vois pas comment régler mon problème.
Code:liste changer(liste L,int n,int a) { int *p=&L->valeur; liste P=L; int i; for (i=0;i<n-1;i++) { *p=P->suivant->valeur; } *p=a; return P; }
Pourriez-vous me donner un coup de main, s'il vous plait ?
En vous remerciant d'avance
-----