This is a console-based Library Management System implemented in C++.
The system uses a Singly Linked List to dynamically manage book records and supports full CRUD operations.
This project demonstrates core Data Structures and Object-Oriented Programming concepts.
- โ Add New Book
- ๐ Search Book by ID
- ๐ Issue Book to Student
- ๐ Return Book
- ๐ List All Books
- โ Delete Book
- ๐ข Total Book Counter
- ๐ซ Duplicate ID Protection
- ๐งน Automatic Memory Cleanup (Destructor)
- Singly Linked List
- Dynamic Memory Allocation (
new/delete) - Pointers
- Structs & Classes
- Constructors & Destructors
- Object-Oriented Programming (OOP)
- Menu-Driven Program Design
Since the system uses a singly linked list, operations require linear traversal:
- Add Book โ O(n)
- Search Book โ O(n)
- Delete Book โ O(n)
- Issue / Return โ O(n)
- List Books โ O(n)
- C++
- GCC (MinGW-w64)
- VS Code
- Windows PowerShell
- Compile the program:
g++ main.cpp -o library- Run the executable:
.\library====== Library Management System ======
1. Add New Book
2. Search for a Book
3. Issue a Book
4. Return a Book
5. List All Books
6. Delete a Book
7. Exit
This project strengthened my understanding of:
- Linked List implementation
- Memory management in C++
- Pointer manipulation
- Object-Oriented system design
- Command-line application structure
- File handling for persistent storage
- Sorting functionality
- Fine calculation system
- GUI-based version
- Database integration
โญ Built to strengthen core Data Structures fundamentals.