Assignment Set 5 (Uploaded on September 2, 2014) Clarification deadline date: September 4, 2014 Submission deadline date: September 8, 2014 Problem 1: Write a C program that creates a singly linked list using self referential structures with the following functionalities: (a) add a node at the beginning of the link list; [10] (b) add a node at the end of the link list; [15] (c) ask from the user at which position the node is to be added, and if possible, add the node at the requisite location; [15] (d) delete a node from the beginning of the link list; [10] (e) delete a node from the end of the link list; [15] (f) ask from the user the position of the node to be deleted, and if possible, delete the node from the requisite location; [15] (g) prints the linked list [10]. Once the linked list is created, simulate the to-and-fro walk on the linked list using link reversal techniques discussed in the class. At each step, you have to ask the user whether (s)he wants to go back or forward and according to that traverse the linked list. Keep provisions of printing the linked list, whenever the user wants. [40] [Marks: 90{(a) to (g)} + 40 + 20 {Good programming habits} = 150] --------------------------------------------------------------- Naming conventions for program files. xx is your roll number: For Problem 1: The name of the src file for problem 1 of assignment 5 should be ``cs14xx-assign5-src-prog1.c''. The name of the app file for problem 1 of assignment 5 should be ``cs14xx-assign5-prog1.c''. The name of the include file for problem 1 of assignment 5 should be ``cs14xx-assign5-prog1.h''. ----------------------------------------------------------------------- At the top of each of your program files, add the following. If you are writing multi-file programs, then each file should have it. /*------------------------------------------------------------------ Name: Roll Number: Date of Submission: Deadline date: Program description: Acknowledgements: --------------------------------------------------------------------*/