A curated collection of fundamental C Language Programs for beginners, students, and interview preparation.
Hi — I’m Dimpesh Panwar 👋 Welcome to the C Language Programs repo for Hacktoberfest 2025! This repo is all about small, well-documented C programs that help beginners learn and contributors practice open-source collaboration.
- Follow my GitHub account ✅
- Fork this repository and create a unique Pull Request (PR) — avoid duplicating existing solutions.
- Clear and Documented Code: PRs with well-written code, meaningful comments, and a short description are more likely to be accepted.
- Beginner-Friendly & Educational: Keep your contributions accessible and helpful for beginners.
- ⭐ Follow my GitHub account
- 🍴 Fork this repository
- 🔀 Create a new branch : git checkout -b feature/your-short-title
✍️ Add your C program inside a descriptive folder
Example: sorting/quick_sort.c
📝 Include a short README or comment at the top of your file containing:
- Program name
- Problem statement
- Input / Output examples
- Complexity (if applicable)
🔁 Commit with a meaningful message
git commit -m "Add: bubble sort with explanation"📤 Push your branch and open a PR to main with a clear title and description
✅ Ensure your PR is unique — check existing files before adding
Before submitting your pull request, please ensure the following:
-
✅ Program compiles successfully with
gcc
Mention the exact command used, e.g.:gcc -o program program.c -
✅ File placement & naming:
Place your file in an appropriate folder and give it a clear, descriptive name.
Example:math/fibonacci_iterative.c -
✅ Examples provided:
Include a couple of input/output examples in comments at the top of your file or in a small README. -
✅ No duplicates:
Make sure the solution does not already exist in the repository. -
✅ PR description:
Add a short, clear description of your approach in the PR body.
- Use clear and descriptive variable names.
- Include meaningful comments explaining your code.
- Keep functions short and focused on a single task.
- Prefer standard I/O (
scanf/printf) for examples. - If your program uses advanced features, briefly explain them at the top of the file.
Here are some ways you can contribute to the repository:
- Classic algorithms (sorting, searching)
- Number theory (GCD, prime checks)
- Data structures (linked list, stack, queue)
- Small games (e.g., tic-tac-toe CLI)
- Problem-solving examples (recursion, dynamic programming basics)
- Useful utilities (file I/O examples)
file_io_examples.c— demonstrates basic file read/write usingfopen,fgets, andfprintf.dynamic_array.c— simple vector-like dynamic array with push and automatic resizing.linked_list_example.c— singly linked list with insert, delete, and print functions.bst_example.c— binary search tree with insert and inorder traversal.
Contributions should be compatible with an open-source license.
This repository uses the MIT License unless otherwise noted.
- If you have any questions or need feedback, open an issue or mention me in your PR.
- I’ll review and accept unique, well-documented contributions.
Happy coding — let’s make Hacktoberfest 2025 awesome! 🚀