Pretty sure it's Variables, Logic Gates, and Pointers, in that order. At least in high school and college when I tutored, those were the three things that tripped people up quickly. They either failed to understand the concept of Variables (A box where a number could be placed, but that number...