#include<stdio.h>
#include<stdlib.h>
struct node
{
    int data;
    struct node*next;
}*head=NULL,*tail;
void deletevalue(int val)
{
    if(head==NULL)
    {
        printf("List is empty");
        return 1;
    }
    struct node*temp=head;
    struct node*prev=NULL;
    if(head->data==val)
    {
        struct node*todelete=head;
        head=head->next;
        free(todelete);
        if(head==NULL)
        {
            printf("List is empty");
            return 1;
        }
    }
    else
    {
        while(temp!=NULL && temp->data=next)
        {
            prev=temp;
            temp=temp->next;
        }
    
    prev->next=temp->next;
    free(temp);
    }
temp=head;
while(temp!=NULL)
{
    printf("%d",temp->data);
    if(temp->next=NULL)
    printf(" ");
    temp=temp->next;
}