PROGRAM TO DELETE FROM END IN DOUBLY LINKED LIST
|
Download Attachment
|
/**************************************************/ /*PROGRAM TO DELETE FROM END IN DOUBLY LINKED LIST*/ /**************************************************/
#include < stdio.h> #include < conio.h> #include < malloc.h> #include < process.h> #include < ctype.h>
struct doubly_list { int info; struct doubly_list *prev; struct doubly_list *next; }*first,*last,*newnode,*ptr;
void main() { int item,i; char ch; clrscr(); newnode=(struct doubly_list*)malloc(sizeof(struct doubly_list)); first=newnode; last=newnode; newnode->prev=NULL; do { printf("\nEnter data: "); scanf("%d",&item); newnode->info=item; printf("\nDo you want to create another node:(y/n)"); fflush(stdin); scanf("%c",&ch); if(tolower(ch)=='y') { newnode->next=(struct doubly_list*)malloc(sizeof(struct doubly_list)); newnode->next->prev=newnode; newnode=newnode->next; last=newnode; } else { newnode->next=NULL; } }while(tolower(ch)!='n'); printf(“\nDoubly Linked List is:”); ptr=first; i=1; while(ptr!=NULL) { printf("\nNode %d : %d",i,ptr->info); ptr=ptr->next; i++; }
last=last->prev; last->next=NULL; if(last==NULL) { first=NULL; }
printf(“\nAfter deletion Doubly Linked List is:”); ptr=first; i=1; while(ptr!=NULL) { printf("\nNode %d : %d",i,ptr->info); ptr=ptr->next; i++; } getch(); }
|
|
|
|
|
Share this article
| Print |
Article read by 4480 times
|
|
|