Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdlib.h>
- #include <stdio.h>
- typedef struct nodo *Lista;
- typedef struct nodo {
- int val;
- Lista next;
- } nodo;
- //prototipi funzione
- void scambia(Lista L, nodo *N);
- Lista leggilista();
- void stampalista();
- int main ()
- {
- Lista lotamma=NULL;
- nodo *S;
- S=malloc(sizeof(nodo));
- lotamma=leggilista();
- stampalista(lotamma);
- printf("\n\ninserisci valore da cercare\n");
- scanf("%d", S->val);
- scambia(lotamma,S);
- stampalista(lotamma);
- }
- void scambia(Lista L, nodo *N)
- {
- int var=N->val;
- int var2;
- while(L!=NULL)
- {
- var2=L->val;
- if(L->val==N->val)
- {
- printf("il nodo e' presente, scambio\n");
- L=L->next;
- N->val=var2;
- L->val=var;
- break;
- }
- L=L->next;
- }
- }
- void stampalista(Lista list)
- {
- while(list)
- {
- printf("%d ", list->val);
- list=list->next;
- }
- }
- Lista leggilista()
- {
- nodo *L;
- Lista N=NULL;
- int val;
- while(val!=-1)
- {
- printf("inserisci elemento nella lista premi -1 per terminare\n");
- scanf("%d", &val);
- if(val!=-1){
- L=malloc(sizeof(nodo));
- L->val=val;
- L->next=N;
- N=L;
- }
- }
- return N;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement