Algorithm design and computational thinking
Syntax, data types, and variables
User input and program output
Mathematical and logical operations
Conditionals and loops
Data collections and manipulation
Modular programming and reuse
Custom data types and memory layout
Memory addressing and dynamic allocation
Reading, writing, and managing files
Drawing shapes and basic visual output