#include #include struct NODE { int data; struct NODE *link; }; void printlist(struct NODE *); main() { struct NODE *first, *current, *latest; int i=1, j=2; first = (struct NODE *)malloc(sizeof(struct NODE)); first -> link=NULL; current = first; while(scanf("%d", &(current->data)) != EOF) { latest = (struct NODE *)malloc(sizeof(struct NODE)); current->link = latest; current=latest; current->link=NULL; } current = first->link; printlist(current); } void printlist(struct NODE *current) { int i, j=2; printf("Data Position\tValue\n"); while(current->link != NULL) { printf("%d\t\t%d\n", j, current->data); for(i=0; i<3; i++) { if(current->link != NULL) { current = current->link; } } j+=3; } printf("\n"); }