data structures using struct node *delete_end(struct node *startstruct node *ptrptr=startwhile(ptr -next !startptr ptr -nextptr -prev -next startstart -prev ptr -prevfree(ptr)return startstruct node *delete_node(struct node *startstruct node *ptrint valprintf("\ enter the value of the node which has to be deleted ")scanf("% "&val)ptr startif(ptr -data =valstart delete_beg(start)return startelse while(ptr -data !valptr ptr -nextptr -prev -next ptr -nextptr -next -prev ptr -prevfree(ptr)return startstruct node *delete_list(struct node *startstruct node *ptrptr startwhile(ptr -next !startstart delete_end(start)free(start)return startoutput *****main menu **** create list display the list delete the entire list exit enter your option enter - to end enter the data enter the data enter the data enter the data- circular doubly linked list created enter your option circular doubly linked list deleted enter your option