Break down lengthy or elaborate processes into discrete steps that students can perform sequentially. This strategy can be an important tool for success.
Emphasize that it is not necessary to add the reference operator, &, in C++ when passing an argument to a function that takes in a reference.
Encourage students to develop solutions in their natural language before considering syntax to improve their general problem solving abilities.
Encourage students to step away from buggy code and think about the big picture as a part of the debugging process.
Direct students struggling with loops to write on paper what should happen, then have them determine the start, end, and update values.
Encourage students to write the inside of the loop before the loop syntax to help students recognize the conditions necessary for iteration.
Avoid using technical jargon when introducing new material to help students understand course content.
Explain through metaphor that return values allow a primary function to get information from a secondary function.
Use a diagram with variable-value pairs for each call of a recursive function to help students see the change of control flow as calls are made and completed.