Document Analysis Project in C Part 1
This first part of the project creates a set of library functions that implement a doubly linked
list. Implement the functions in the order specified below. You are required to submit your code after
completing each function. An extensive set of unit tests is included along with a Makefile.
List List Illustration
- All of your code will be implemented in the linked_list_functions.c file. Detailed descriptions
of the operation of each function are included in this source code file. This is the only source code file that will be graded.
- You are not allowed to make any changes to linked_list_functions.h, unit_tests.h, and main.c.
- You are not allowed to change the design of the functions in linked_list_functions.c.
- You will be graded on both the quality of your code and the number of provided unit tests that pass.
- Incremental development is required. You must submit your code after completing each function.
Do not start the next function until you get the previous function working.
- In your activity journal be sure to enter an estimate for each function before starting the code.
- Update your activity journal with your time spent and observations when implementing that one function.
- Submit your code when that function passes its unit tests. You must include your updated Activity Journal.
- Do not start the next function until the previous function is working.
If you must continue with one or two tests still failing be aware that this may cause problems with the subsequent functions.
- Implement and submit the functions in this order:
- (10) Overall code quality
- ( 5) Incremental development with at least one submission per function
- ( 5) Correct submission and code compiles and links without warnings with provided Makefile
- ( 5) All unit tests run without crashing (no segment faults and no infinite loops)
- (10) create_node
- (20) add_node_at_head
- (10) clear_linked_list including correct free of all allocated heap space
- (20) add_node_after_current
- (15) find_word
Place your completed linked_list_functions.c and ActivityJournal.txt files in a directory named
analysis_part1 at the top level of your git repo.