- HubPages»
- Technology»
- Computers & Software»
- Computer Science & Programming
Loop in C Programming Language

What is loop in C language?
Loop is one of the important parts of C language and study of C language is incomplete without this. So let’s head towards completion of our knowledge about C language. As a dedicated C language leaner, right now you should have two questions. What is loop and why we need loop in our C program?
For your better understanding let me make this easy, loop means repeating something. In many scenarios, in our program, we need to execute same piece of code so there we can use loop instead of writing same code repeatedly. A simple example is our media player application where we can repeat one or all songs, and it will keep playing that until we disable repeat song.
Loop in C language executes block of code depending on condition we provide, for example, I told you to write your name for 10 times on a piece of paper. So here 10 times is condition, you have to write your name for 10 times only, neither less than 10 nor greater than 10. We will examine same example later.
Types of loop in C language
There are 3 type of loop which helps us to repeat code block of program and they are:
- For loop (Click here to view tutorial on For loop)
- While loop (Click here to view tutorial on While loop)
- Do – while loop (Click here to view tutorial on Do-While loop)
I explained about each loop in details in separate article dedicated to each topic.
Advantages of loop in C language
Many people don’t know this fact that loop is powerful feature of C programming language and it can help developer and programmer to reduce many lines of code to few lines. I have example to prove my point. Below is a simple C program example which displays table from 2-10 using with and without loop. After reviewing below code you will come to know the power of loop.
#include<stdio.h> #include<conio.h> void main() { int i, j; clrscr(); printf("Table with loop.\n\n"); for(i=2;i<=10;i++) { for(j=1;j<=10;j++) { printf("%3d ",i*j); } printf("\n"); } printf("\nTable without loop.\n\n"); printf("%3d ",2*1); printf("%3d ",2*2); printf("%3d ",2*3); printf("%3d ",2*4); printf("%3d ",2*5); printf("%3d ",2*6); printf("%3d ",2*7); printf("%3d ",2*8); printf("%3d ",2*9); printf("%3d ",2*10); getch(); }
Reader's Feedback
Did this tutorial help you to learn about loops in C programming?
Explanation
Let’s review this code little bit. Our first concerning area is code block (line no. 11- 18). In this block we have two “for loops” to produce table from 2-10. Outer “for loop” (where we are using “i” variable) is responsible for printing new line along with executing inner “for loop” (where we are using “j” variable).
The logic to produce table is that outer loop starts with value of “i” equals to 2 and inner loop starts with value of “j” equals to 1. In inner loop I am multiplying value of “i” with value of “j” (2*1 = 2) and printing the result. In next cycle value of “j” would be equals to 2 (i.e. 2*2 = 4) and again three space after printing the result. This will continue till value of “j” reaches to 10 after that value of “i” will increase and this process will continue.
In printf statement (printf("%3d",i*j);), “%3d” is used as output format. It will print values using three character space format like 009 (replace 0 with empty space). This is just to maintain alignment.
Now come to code block (line no. 22- 31), this is lengthy way to achieve the above output. That block only prints table of 2 and requires 10 lines of code whereas “for loop” code requires 8 lines of code to produce table of 2-10. If you want to produce table till 20 then you have to modify only one variable (in outer loop condition i<=10 replace 10 with 20, that’s it).
© 2011 RAJKISHOR SAHU