C has three loop statements: while, for, and do...while. The while and for are pretest loops where the condition is checked before the loop body executes, and do...while is a post-test loop where the condition is checked after the body executes. All three loops can be used for event-controlled and counter-controlled loops.