 |
fabione |
.amico.
Registered: Nov 2003
Posts: 33 (0.00 al dì)
Location: milano
Corso: informatica per le telecomunicazioni
Anno: 4FC
Time Online: 16:51:02: [...]
Status: Offline
Edit | Report | IP: Logged |
Liste Concatenate Inserimento Di Un Elemento
Ragazzi sono in panico,vorrei inserire un elemento nella mia lista qualcuno saprebbe aiutarmi,devo riuscire a fare puntare p1 al primo elemento della lista(che sarebbe 'g') e p2 al secondo elemento(che sarebbe 'i') , q invece deve puntare all'elemento della lista esterna('t'), di modo che possa eseguire void insert(LINK p1,LINK p2,LINK,q).
ecco il codice:
#include "lista1.h" /* l'header è a posto */
#include <stdio.h>
#include <stdlib.h>
int count(LINK head);
void insert(LINK p1,LINK p2,LINK q);
main()
{
LINK head,heads,p1,p2,q;
head=malloc(sizeof(ELEMENT));
head->d='g'; /* creo una lista di un 1EL*/
head->next=NULL;
head->next=malloc(sizeof(ELEMENT));
head->next->d='i'; /* aggiungo un secondo el */
head->next->next=NULL;
head->next->next=malloc(sizeof(ELEMENT));
head->next->next->d='o'; /* aggiungo un terzo EL*/
head->next->next->next=NULL;
heads=malloc(sizeof(ELEMENT));
heads->e='t'; /* creo una lista separata */
heads->next=NULL;
p1=&head->d;
p2=&head->next->d; /* MI PUZZA DI STRO
q=&heads->e; CONFERMATE? */
printf("%c\n%c\n%c",head->d,head->next->d,head->next->next->d);
printf("\nla mia lista separata cont: %c\n",heads->e);
printf("\nLe occorenze sono: %d\n",count(head)); /* stampo gli elem*/
}
int count(LINK head)
{
if(head==NULL)
return 0; /* definizione della funzione count */
else
return(1+count(head->next));
}
void insert(LINK p1,LINK p2,LINK q)
{
p1->next=q;
q->next=p2;
}
|