PROGRAM TO DELETE WITH GIVEN ITEM FROM LINEAR LINKED LIST
/***********************************************************/ /*PROGRAM TO DELETE WITH GIVEN ITEM FROM LINEAR LINKED LIST*/ /***********************************************************/
#include < stdio.h> #include < conio.h> #include < malloc.h> #include < process.h> #include < ctype.h>
struct linear_list { int info; struct linear_list *next; }*start,*newnode,*ptr;
void main() { int item,loc,j; int i; char ch; clrscr(); newnode=(struct linear_list*)malloc(sizeof(struct linear_list)); start=newnode; 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 linear_list*)malloc(sizeof(struct linear_list)); newnode=newnode->next; } else { newnode->next=NULL; } }while(tolower(ch)!='n'); printf(“\n Linked List is:\n”); ptr=start; i=1; while(ptr!=NULL) { printf("\nNode %d : %d",i,ptr->info); ptr=ptr->next; i++; }
loc=0; j=1; ptr=start; while(ptr!=NULL) { if(ptr->info==item) { loc=j; break; } ptr=ptr->next; j=j+1; } if(loc= =0) { printf(“\nItem not found”); } Else { ptr=start->next; ptr1=start; loc1=1; while(loc1 { ptr1=ptr; ptr=ptr->next; loc1=loc1+1; } ptr1->next=ptr->next;
printf("\nAfter deletion the linked list is:\n"); ptr=start; i=1; while(ptr!=NULL) { printf("\nNode %d : %d",i,ptr->info); ptr=ptr->next; i++; } } getch(); }
http://
http://
Contributed by:
Rohit kakria
I am software developer
Resourse address on xpode.com
http://www.xpode.com/Print.aspx?Articleid=371
Click here to go on website
|