Control structures: You are expected to be able to a) tell the output of a piece of code using these control structures b) choose the most appropriate control construct given a circumstance c) explain the differences between control construct and the scenarios in which one is more appropriate than another Decisions: if if - else if - else if - else if if - else if - else if - else switch Loops: while do - while for Recursion Function calls: You need to understand how they work, what variables get placed on the stack, and when those variables are created and destroyed. What does a return type of void mean? What does a return type of void* mean?