// the find
Aditya-xcity/leave-management-system-c
A menu-driven Leave Management System built in C using file handling, supporting admin and employee roles with leave approval workflow.
A single-file C console app for tracking employee leave requests with separate admin and employee menus, backed by flat text files instead of a database. It's a college mini-project demonstrating struct usage and file I/O, not something meant for actual office use.
Uses a temp-file-and-rename pattern for updates so a crash mid-write won't truncate employees.txt or leaves.txt. The admin/employee split with automatic balance deduction on approval is a reasonable amount of business logic for a single main.c file. README is honest about the project's scope and limitations rather than oversized.
The compiled main.exe and the runtime-generated employees.txt/leaves.txt are committed to the repo, meaning the binary is stale the moment the source changes and the 'database' ships with whatever test data was on the author's machine. Admin credentials are hardcoded in plaintext in the source. No password protection for employee accounts at all, and no date-based leave tracking, so leave balances can't be checked against actual calendar overlaps. Everything lives in one file with no separation between UI, business logic, and storage, so it won't scale past mini-project size.