Liste chaînée AVEC NOEUD DE TETE !

Fermé
Sakura1327 Messages postés 6 Date d'inscription lundi 17 octobre 2011 Statut Membre Dernière intervention 6 janvier 2012 - 1 janv. 2012 à 18:03
Bonjour,



svp je suis entrain de travailler sur un petit programme concernant les listes chaînées simples mais AVEC noeud de tête, le problème c'est que la fonction d'ajout et d'affichage bloc, je ne comprend pas ou est le problème, voici mes deux fonctions ^^ merci de m'avoir aider .


/******AFFICHAGE LISTE SIMPLE AVEC NOEUD DE TETE********/

void afficher(NodePointer f){

NodePointer p;


printf("\n\n\n\tVoici votre liste [ ");
if(p==NULL)
printf("vide");


while(p!=NULL){
printf("%d",p->val);

if(p->next!=NULL)
printf(",");
p=p->next;
}
printf(" ]\n\n\n");

}

et la deuxième :


/******INSERTION LISTE SIMPLE AVEC NOEUD DE TETE******/

NodePointer ajouter2(NodePointer f,int valeur){
NodePointer p,r,s;
p=f;


r=(NodePointer)malloc(sizeof(struct Node));
r->val=valeur;


s=p->next;

while((s!=NULL)&&(s->val<r->val)){
p=s;
s=s->next;
}


r->next=s;
p->next=r;


return f;
}