Skip to content

ahmed-ali-codes/C-projects

Repository files navigation

🖥️ C Programming Projects

A collection of C programs written during university coursework and self-study, covering a range of topics from algorithmic thinking to data structures and real-world logic. Each project is self-contained with its own source code, pseudocode/algorithm, and sample input/output.


Projects

# Project Description Key Concepts
1 Coin Distribution Program Calculates the minimum number of coins needed to make a given amount Greedy algorithm, modular arithmetic
2 Comparison for Time Complexity Benchmarks and compares execution time of different algorithms Time complexity, clock(), performance analysis
3 Employee Record Manager Stores and manages employee records using arrays Arrays, loops, user input
4 Employee Record Manager (Structures) Extended version using struct for cleaner data modeling Structures, typedef, modular functions
5 Fibonacci Series Generates the Fibonacci sequence iteratively or recursively Loops, recursion, integer arithmetic
6 Recycling Reward System Calculates reward points based on recyclable items submitted Conditionals, switch-case, basic I/O
7 Speed Limit Enforcer Computes fines based on a vehicle's speed and speed limit rules Conditionals, arithmetic, real-world logic
8 Vowel Analyzer Counts vowels, consonants, and special characters in a string String traversal, character classification
9 Number Analyzer Analyzes a number for properties like prime, even/odd, palindrome Number theory, modular arithmetic, loops
10 Temperature Analyzer Converts temperatures between Celsius, Fahrenheit, and Kelvin Arithmetic formulas, user menus, type casting

How to Compile & Run

All projects use standard C and compile with GCC (or any C99-compatible compiler).

gcc filename.c -o output_name
./output_name

Example:

cd Speed_Limit_Enforcer
gcc speed_limit.c -o speed_limit
./speed_limit

On Windows, use MinGW or compile via Code::Blocks / Dev-C++.


Repository Structure

C-projects/
│
├── Coin_distribution_program/
├── Comparison_for_time_complexity/
├── Employee_record_manager/
├── Employee_record_manager_using_structures/
├── Fib_series/
├── Recycling_reward_system/
├── Speed_Limit_Enforcer/
├── Vowel_analyzer/
├── num_analyzer/
├── temperature_analyzer/
│
├── LICENSE
└── README.md

Each project folder contains:

  • .c source file(s), with inline comments
  • Algorithm / pseudocode notes
  • Sample input and expected output

Concepts Covered

  • Variables, data types, and type casting
  • Control flow — if/else, switch, ternary operators
  • Loops — for, while, do-while
  • Functions and modular design
  • Arrays and string manipulation
  • Structures (struct, typedef)
  • Recursion
  • Pointers and memory basics
  • Performance measurement with clock()
  • Standard library usage (stdio.h, string.h, math.h, time.h)

Author

Ahmed Ali — Computer Science student building projects in C, Assembly, and beyond.


License

This repository is open-source under the MIT License.

About

C programs from university coursework — coin distribution, employee records, speed fines, number analysis, time complexity benchmarks, and more. Built with GCC.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages