Singly Linked List
Singly Linked List
#include<stdio.h>
#include<stdlib.h>
int c=0,pos=0;
struct node
{
int info;
struct node*next;
};
struct node*start;struct node*ptr;struct node*temp;struct node*prev;
int value;
void delelm()
{
int e;
if(start==NULL)
{
printf("Empty list \n");
}
else
{
printf("Enter the element to deleted: ");
scanf("%d",&e);
if(start->info==e)
{
if(start->next==NULL)
{
start=NULL;
}
else
{
temp=start;
start=temp->next;
free(temp);
c--;
}
}
else
{
temp=start;
while(temp!=NULL)
{
}
}
}
void main()
{
int i;
do
{
printf("1. Insertion at the beginning \n");
printf("2. Insertion at end \n");
printf("3. Insertion at a specified position \n");
printf("4. Deletion at the beginning \n");
printf("5. Deletion at end \n");
printf("6. Deletion at a specified position \n");
printf("7. Deletion of a specified element \n");
printf("8. Display \n");
printf("9. Exit\n");
printf("Enter: ");
scanf("%d",&i);
switch(i)
{
case 1: insertbeg();
break;
case 2: insertend();
break;
case 3: insertpos();
break;
case 4: delbeg();
break;
case 5: delend();
break;
case 6: delpos();
break;
case 7: delelm();
break;
case 8: display();
break;
case 9: printf("Exiting.. \n");
exit(0);
break;
default:printf("invalid");
}
}
while(i<9);
}
Output: