Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- typedef struct nodo *lista;
- typedef struct nodo{int dato;lista next;} nodo;
- /*lista creaLista(lista *N) //crea una nuova lista
- {
- N->next=NULL;
- return N
- }*/
- void inserisci(lista L,nodo *N,nodo *P) //inserisce N dopo P
- {
- N->next=P->next;
- P->next=N;
- }
- void cancella(lista L,nodo *P) //cancella l'elemento dopo P
- {
- nodo *temp;
- temp=P->next;
- if(temp==NULL) return;
- P->next=temp->next;
- free(temp);
- }
- lista inserTesta(lista L,nodo *N) //N diventa il primo elemento della lista
- {
- N->next=L;
- return N;
- }
- lista cancTesta(lista L) //cancella il primo elemento della lista
- {
- nodo *temp;
- temp=L->next;
- if(!temp) return L;
- free(L);
- return temp;
- }
- lista creaLista()
- {
- lista L=NULL;
- int val;
- nodo *N;
- while(1)
- {
- printf("\nInserisci un altro valore (0 per terminare): ");
- scanf("%d",&val);
- if(!val) break;
- N=malloc(sizeof(nodo));
- N->dato=val;
- N->next=L;
- L=N;
- }
- return L;
- }
- void stampaLista(lista L)
- {
- printf("\nI valori inseriti sono:\n");
- while(L!=NULL)
- {
- printf("%d\n",L->dato);
- L=L->next;
- }
- }
- int main(void)
- {
- lista L;
- int ris;
- L=creaLista();
- printf("\n");
- stampaLista(L);
- printf("\n");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement