Topic : Loops in C
Author : Steve McMillan
Page : 1

  
Loops


Most real programs contain some construct that loops within the program, performing repetitive actions on a stream of data or a region of memory. There are several ways to loop in C. Two of the most common are the while loop:
    while (expression)
    {
   ...block of statements to execute...
    }


and the for loop:
    for (expression_1; expression_2; expression_3)
    {
   ...block of statements to execute...
    }


The while loop continues to loop until the conditional expression becomes false. The condition is tested upon entering the loop. Any logical construction (see below for a list) can be used in this context.
The for loop is a special case, and is equivalent to the following while loop:

    expression_1;

    while (expression_2)
    {
   ...block of statements...

   expression_3;
    }


For instance, the following structure is often encountered:
    i = initial_i;

    while (i <= i_max)
    {
        ...block of statements...

   i = i + i_increment;
    }


This structure may be rewritten in the easier syntax of the for loop as:
    for (i = initial_i; i <= i_max; i = i + i_increment)
    {
   ...block of statements...
    }


Infinite loops are possible (e.g. for(;;)), but not too good for your computer budget! C permits you to write an infinite loop, and provides the break statement to ``breakout '' of the loop. For example, consider the following (admittedly not-so-clean) re-write of the previous loop:
    angle_degree = 0;

    for ( ; ; )
    {
   ...block of statements...

   angle_degree = angle_degree + 10;
   if (angle_degree == 360) break;
    }


The conditional if simply asks whether angle_degree is equal to 360 or not; if yes, the loop is stopped.

Page : 1