Looping in C | Loops in C | C Loops

Looping is a technique in which a set of statements are repeatedly executed until the condition specified becomes false. So looping is based on a condition.

A loop is a repeated (iterated) sequence of statements. The repetition continues while a condition is true. When condition becomes false, the loop ends. Then control passes to the statements following the loop.

A loop in a program consists of two parts, one part is known as body of the loop and the other part is known as control statement. The control statement consists of certain conditions which are checked during execution and depending on the condition the statements within the body of the loop are executed repeatedly.


Categories of loops:

There are three types of loops available in C:

  • For loop
  • While loop
  • Do…while loop


Loops can be classified as entry controlled loop and exit controlled loop. In case of entry controlled loop, the condition is tested first. The statements will be executed only if the condition specified is true. After execution the loop statements, again the condition is tested and the statements will be executed until the condition specified becomes false. The loops for and while are entry controlled loops.

In case of an exit controlled loops, the loop statements are executed first, then the condition will be tested. If the condition is true, again the statements will be executed until the condition becomes false. The loop do…while is exit controlled loop.


For Loop:

It is an entry controlled loop. Generally, for loop is used to execute a set of statements a specific number of times.


Syntax:

for(initialization; test condition; modifier expression)

{

body of the loop;

}

Initialization: The initialization part that controls the loop through a variable is called a loop index or control variable. The control variable is initialized first with a simple assignment statement. For example,  i=0. The initial value is performed only once.

Test condition: The value of the control variable is tested using this test condition. For each repetition this is performed. This is a relational expression, such as i<10 which could determine the exit from the loop. If this expression is true, then the body of the loop is executed, and if false, the control comes out of the loop.

Modifier expression: At the end of the loop the control variable is modified and the updated value of the control variable is again tested. If the condition is satisfied, the loop continues, if not control exits.


While Loop:

The simplest of all the looping statements in C is the while loop. The while loop is an entry controlled loop.

In a while loop, the condition is checked before executing the body of the loop. If condition is true only then the body of the loop is executed otherwise not. After execution of the body of the loop, the control again goes back to test condition. The condition is checked, if it is true the body of the loop is executed once again. This process is repeated until the test condition becomes false. The loop will be continued until the test condition is true and terminates as soon as test condition becomes false. Once the control goes out of the loop the statements which are immediately after the loop is executed.

 

Syntax:

while (test condition)

{

body of the loop

}



Do-While Loop:                                                                                   

It is similar to the while loop except that it tests the condition at the end of the loop body. It is an exit controlled loop statement. In do…while loop, the condition is always checked after the body of the loop.

In some cases, we have to execute a body of the loop at least once even if the condition is false. The while and for do not support such action. This type of operation can be achieved by using the do while statement.

In do…while loop, the body of the loop is always executed at least once. After the body is executed, then it checks the condition. If the condition is true, then it will again execute the body of the loop otherwise control is transferred out of the loop. Once the control goes out of the loop the statements which are immediately after the loop is executed.


Syntax:

do

{

 body of the loop

}

while (condition) ;

On reaching the do statement, the control proceeds to execute the body of the loop. When the while statement is reached, the condition is evaluated. If the condition is true, control is transferred to the beginning of the do loop and the program continues to execute the body of the loop. Otherwise control is transferred out of the loop. 


Break Statement:

Break statement terminates the loop or switch statement. Sometimes it becomes necessary to come out of the loop even before loop condition becomes false, and then break statement is used. Instead of exiting an entire program, use the break statement to exit the current loop or section of code.

Break statement is used inside loop and switch statements. It cause immediate exit from that loop in which it appears and it is generally written with condition. It is written with the keyword as break.

When break statement is encountered loop is terminated and control is transferred to the statement, immediately after loop. The break statement is usually associated with if statement.


Syntax:      break;

Example:

for(i=1;i<=10;i++)

{

printf(“\t%d”,i);

if(i==5)

break;

}

Output: 1   2        3        4        5

Here, although the for loop is to be executed 10 times, the break statement will terminate the loop when the control variable i becomes 5


Continue Statement:

This statement is used to go to the top of the loop from anywhere within the loop during its execution. In certain circumstances, it requires to skip a part of the body of the loop and restart from the beginning part of the loop. In such cases, continue  statement is used.

Continue statement is used for continuing next iteration of loop after skipping some statement of loop. When it encountered control automatically passes through the beginning of the loop.

The continue statement can be used only inside a looping statement. It is usually associated with if statement. It is useful when we want to continue the program without executing any part of the program.

The difference between break and continue is, when the break encountered loop is terminated and it transfer to the next statement and when continue is encounter control come back to the beginning position.


Syntax:      continue;

for(initialization; test condition; modifier expression)

{

…………………..

if(condition)

continue;

……….

}


Example:

for(i=1;i<=6;i++)

{

if(i==4)

continue;

printf(“\t%d”,i);

}


Output:1    2        3        5       6

In the above example, only i=1,2,3,5,6 will be printed. When i is equal to 4, control returns to the beginning of the loop.



Post a Comment

0 Comments