This program must be written in C
Write a function called reverseList that creates a new linked list containing student_t nodes of an input linked list in the reverse order without destroying the input linked list. The structure of a student_t node was specified in the previous exercise.
Do not make any assumptions about the order of the student_t nodes in the input list (i.e. they may or may not be connected in sorted order).
The first argument of the reverseList function will be a pointer containing the address of the first node of the input list.
The second argument is a pointer to the pointer that will contain the address of the first node of the new list your function creates.
You must implement the prototype exactly as given below so that we can test your function with our driver: void reverseList(studentNode_t *origListPtr, studentNode_t **ptrToRevListPtr); Your insert and print code from Exercise #1 should be useful in testing your new function. Sample output of a driver that calls a function that satisfies the requirements of this exercise is provided below.
Just to confirm, your function doesn't display data on the screen. This output is to illustrate the behavior of reverseList.