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.
| # | 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 |
All projects use standard C and compile with GCC (or any C99-compatible compiler).
gcc filename.c -o output_name
./output_nameExample:
cd Speed_Limit_Enforcer
gcc speed_limit.c -o speed_limit
./speed_limitOn Windows, use MinGW or compile via Code::Blocks / Dev-C++.
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:
.csource file(s), with inline comments- Algorithm / pseudocode notes
- Sample input and expected output
- 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)
Ahmed Ali — Computer Science student building projects in C, Assembly, and beyond.
This repository is open-source under the MIT License.