AI Summary
[DOCUMENT_TYPE: user_assignment]
**What This Document Is**
This document details the first programming assignment for COP 3502H, Computer Science I, at the University of Central Florida. It outlines a foundational project focused on the implementation of linked list data structures and associated algorithms in C. This assignment serves as a practical introduction to core programming concepts and prepares students for more complex data structure work later in the course. It simulates a real-world scenario where students act as early employees tasked with building essential software tools.
**Why This Document Matters**
This assignment is crucial for students enrolled in COP 3502H who need a clear understanding of the expectations, requirements, and grading criteria for their first major project. It’s particularly valuable for students who are new to linked lists or C programming, as it provides a structured framework for developing and testing these fundamental concepts. Students will benefit from carefully reviewing this document *before* beginning the assignment to ensure a strong start and maximize their potential score.
**Topics Covered**
* Linked List Data Structures
* Dynamic Memory Allocation
* Algorithm Design and Implementation
* Function Prototyping and Documentation
* Software Testing and Debugging
* Data Structure Operations (insertion, deletion, searching)
* List Manipulation (reversal, union, intersection)
* Code Organization and Modularity
**What This Document Provides**
* A detailed description of the assignment’s context and objectives.
* A specific structure definition (`struct node`) to be used for the linked list implementation.
* A comprehensive list of required functions to be implemented, covering core linked list operations.
* Guidelines for code documentation, emphasizing the importance of clear and concise comments.
* Instructions for testing the implemented routines and submitting the completed assignment.
* A breakdown of the grading rubric, outlining the weight assigned to functionality, testing, and documentation.
* Requirements for file organization and compilation compatibility with the Olympus Unix system.