This roadmap walks you through the fundamentals of C in a single week using the material on this site. Plan on 1β2 hours of study per day.
How to use: click an item on any day to jump straight to that page. Tick the checkbox to track your progress (it's saved in your browser).
DAY 1
First Steps
Goal: Display "Hello World" in C
DAY 2
I/O and Calculations
Goal: Read keyboard input and display calculation results
DAY 3
Conditionals
Goal: use if and switch to give your programs decision-making power
DAY 4
Loops and Arrays
Goal: write loops to repeat work and use arrays to group related data
DAY 5
Functions
Goal: break code into reusable functions
DAY 6
Pointers and Structs
Goal: tackle C's biggest wall β pointers β and bundle related data with structs
DAY 7
Strings, Dynamic Memory & Wrap-Up
Goal: put your pointer knowledge to work with strings, malloc, and file I/O
π
You after 1 week
You'll have a solid foundation in variables, conditionals, loops, arrays, functions, pointers, structs, and dynamic memory.
From there, sharpen your hands-on skills with
exercises,
memory trace problems, and
game projects.
Total progress (all 3 tracks): 0%
TRACK B
β‘ Experienced β 3-Day Fast Track
If you already know variables, control flow, and functions from Python/JS/Java, we skip straight to the things that make C different.
Skip past if/for/while and focus on compilation, explicit types, pointers, and memory management. Plan 2β3 hours per day.
Goal: clear the C-specific hurdles in 3 days, then move on to advanced topics.
DAY 1
C basics β compilation, types, formatting
Goal: learn the rules that differ from your previous language
DAY 2
Core of C β arrays, pointers, strings
Goal: get comfortable with C's most unfamiliar concepts
DAY 3
Practical β malloc, struct, file I/O
Goal: write real-world programs that use dynamic memory and I/O
π‘ Study strategy: skim just the green "β
Must-know essentials" box at the top of each page, grade the matching block on the fill-in page, then go back and re-read the details for any questions you missed. This "essentials β questions β fix gaps" loop is far more effective for exams than reading every page end-to-end.
DAY 1
Basics β variables, operators, control flow
Goal: nail down essentials for types, format specifiers, and if/for/while, then grade Block A
DAY 2
Arrays, functions, scope essentials
Goal: arrays, strings, functions, recursion, global/static β then grade Block B
DAY 3
Pointers, structs, advanced essentials
Goal: pointers, structs, malloc, bitwise β then grade Block C
DAY 4
Final review β revisit weak spots + practice
Goal: pinpoint weak spots and close the gaps with the detail pages
π
Exam-ready!
You've covered the full exam scope: types, control flow, arrays, functions, pointers, and structs.
Revisit the fill-in questions you missed along with the detail pages on those topics, then go crush your exam.