Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- typedef struct item* link;
- struct item{
- int val;
- link next;
- };
- typedef struct{
- link head;
- link tail;
- int n;
- }tab;
- link newNode(int val, link next);
- void insInTail(tab *l, int val);
- int main()
- {
- int i,c = 0;
- link x, t;
- tab *lista = malloc(sizeof(tab));
- lista->head = NULL;
- lista->tail = NULL;
- lista->n = 0;
- for (i = 0; i<=10; i++)
- insInTail(lista,i);
- for (x = lista->head; x != NULL; x = x->next)
- printf("%d\n", x->val);
- //cancellazione
- for (x=lista->head; x!=NULL; x=x->next) {
- if ((c%2) == 0){
- t = x->next;
- x->next = x->next->next;
- free(t);
- }
- c++;
- }
- for (x = lista->head; x != NULL; x = x->next)
- printf("%d\n", x->val);
- return 0;
- return 0;
- }
- link newNode(int val, link next) {
- link x = malloc(sizeof *x);
- if (x==NULL)
- return NULL;
- x->val = val;
- x->next = next;
- return x;
- }
- void insInTail(tab *l, int val){
- if (l->head == NULL){
- l->head = l->tail = newNode(val, NULL);
- }
- else{
- l->tail->next = newNode(val, NULL);
- l->tail = l->tail->next;
- }
- return;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement