Loops in C Language allow repeating execution of statements or blocks of code. There are two types of loops: pretest and posttest. A pretest loop (for and while loops) tests the condition before each iteration. A posttest loop (do-while loop) tests the condition after each iteration. The for loop has three parts - an initializer, condition, and incrementor - that control the loop execution. The while loop tests a condition before each iteration. The do-while loop tests a condition after each iteration.