Skip to content

udaysh134/c-tinker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

C-Tinker

C-Tinker is an open playground for C programmers - from curious beginners to hands-on explorers. It’s a space built to learn by tinkering, experiment freely, and write small yet meaningful programs - from single-file basics to multi-file explorations.

This repository serves as both:

  1. A collection of beginner-friendly programs, mini-projects, and games - all documented and organized for quick understanding.
  2. A sandbox for explorational learning, where you can play with ideas, build, break, and rebuild, because that’s how real learning happens.

⚙️ Quick Setup

Clone the repo :

git clone https://github.com/udaysh134/c-tinker.git

Compile any file :

gcc 01_circle.c -o circle
./circle

💡 You can run any program individually - each file is standalone and self-contained.

📘 Topics Covered

Each section progressively builds on the previous one - from fundamentals to intermediate and then advanced logic.

  1. Basics : C fundamentals, input/output, arithmetic, and first conditional statements.
  2. Conditionals : Programs involving decision-making logic using if-else and relational operators.
  3. Loops : Iteration-based logic using for, while, and nested loops for calculations and pattern printing.
  4. Arrays : Working with single and multi-dimensional arrays, matrix operations, and basic pointer-array relations.
  5. Strings : String manipulation, manual string functions, palindrome checks, and pointer-based string operations.
  6. Functions : User-defined functions, parameter passing, recursion, and modular programming techniques.
  7. Pointers : Understanding memory references, pointer arithmetic, and indirect data manipulation.
  8. Structures : Struct-based programs combining multiple data types for grouped, organized data handling.

🤝 Contributing

C-Tinker is open for contributors who share the same curiosity. You can :

  • Add new programs or optimizations (basic, intermediate, or advanced).
  • Improve documentation or readability.
  • Create your own mini-projects or games inside src/tinkerspace/.

Contribution steps:

  • Fork this repo.
  • Add your code under the relevant folder.
  • Follow the commenting & header format (snippets/header.txt).
  • Submit a pull request.

Each addition should keep the educational tone : short, clean, and easy to follow.

💬 Why I Made This

C-Tinker started as my small testbed - a personal space to try ideas, fail fast, and understand C beyond theory. When someone starred my repo, I realized it could help others too - beginners looking for small, clear examples to learn from. So now, C-Tinker is both my exploration zone and a learning space for others - evolving over time, one small program at a time.

🧾 License

This project is open-sourced under the MIT License - feel free to explore, learn, and build on it.

🙌 Credits

Built and maintained by Uday Shukla and contributors who believe in learning by tinkering.

About

A collection of small games and projects built while exploring the fundamentals and advanced concepts of C/C++ programming languages.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages