A console-based Library Management System developed in C language. Features include book management, student management, book issuance, returns, penalty calculation, and report generation.
Date: November 2025
The Library Management System (LMS) is a console-based application written in C.
It helps manage books, students, and transactions while keeping data in text files.
Designed for small to medium-sized libraries, it is lightweight, simple, and efficient.
Admin Features
- Add, edit, delete, and search books
- Add and view student records
- Issue and return books
- Calculate, adjust, and clear penalties for overdue books
- Generate reports on issued books and student penalties
Student Features
- View personal account details, including issued books and penalties
- Search books by title or author
- Request book issuance if available
- Change personal password
Technical Highlights
- Modular programming with functions and structures
- Persistent storage using text files (
books.txt,students.txt) - Console-based, menu-driven interface
- Role-based access for Admin and Student
- Input validation and error handling
- Library-Management-System/
- main.c : Main program file
- admin.c : Admin functionalities
- student.c : Student functionalities
- files.c : File Handling
- library.h : Header file with structures and prototypes
- books.txt : Persistent storage for books
- students.txt : Persistent storage for students
- README.md : Project documentation
- Programming Language: C (ANSI C)
- Compiler: GCC or any standard C compiler
- Operating System: Windows, Linux, or macOS
- IDE/Editor: Code::Blocks, Dev-C++, VS Code, or any text editor
-
Clone the repository: git clone
-
Compile the program:
gcc main.c admin.c student.c -o LMS
- Run the executable:
./LMS # Linux / macOS LMS.exe # Windows
- Follow the menu to use Admin or Student functionalities.
- Text file storage limits scalability
- Basic password authentication for admin only
- Console-based interface (no GUI)
- Manual input required for book issuance and penalty updates
- Designed for up to ~100 books and students
- Integrate relational database (MySQL, SQLite)
- Encrypted passwords and advanced authentication
- Graphical User Interface (GUI)
- Automated penalty calculation
- Backup and recovery mechanisms
- Cloud-based or remote access
- Source code:
library.h,main.c,admin.c,student.c,books.txt,students.txt - GeeksforGeeks – File Handling in C: https://www.geeksforgeeks.org/file-handling-c-classes/
- TutorialsPoint – C Programming – Data Structures: https://www.tutorialspoint.com/cprogramming/c_data_structures.htm
- W3Schools – C Language Basics: https://www.w3schools.com/c/
- ANSI C Standard Documentation: https://www.iso-9899.info/
- Stack Overflow – Implementing LMS in C
















