C Programming Code Examples C > Linked Lists Code Examples Print the Alternate Nodes in a Linked List without using Recursion Print the Alternate Nodes in a Linked List without using Recursion This C program, using iteration, displays the alternate nodes in a linked list. A linked list is an ordered set of data elements, each containing a link to its successor. #include <stdio.h> #include <stdlib.h> struct node { int a; struct node *next; }; void generate(struct node **); void display(struct node *); void delete(struct node **); int main() { struct node *head = NULL; generate(&head); printf("\nDisplaying the alternate nodes\n"); display(head); delete(&head); return 0; } void display(struct node *head) { int flag = 0; while(head != NULL) { if (!(flag % 2)) { printf("%d ", head->a); } flag++; head = head->next; } } void generate(struct node **head) { int number, j; struct node *temp; printf("Enter length of list: "); scanf("%d", &number); for (j = number; j > 0; j--) { temp = (struct node *)malloc(sizeof(struct node)); temp->a = j; if (*head == NULL) { *head = temp; (*head)->next = NULL; } else { temp->next = *head; *head = temp; } } } void delete(struct node **head) { struct node *temp; while (*head != NULL) { temp = *head; *head = (*head)->next; free(temp); } } }