Looping Control Structures: While
Looping Control Structures: While
As noted earlier, C++ has three repetition, or looping control structures that allow you to repeat a
set of statements until certain conditions are met.
Note: The variable that controls the loop is called loop control variable (LCV)
While Looping Control Structures
The first loop that we’re going to discuss about is while loop. The general form of while loop is:
while (expression)
statement
In C++, while is a reserved word. Of course, the statement can be either a simple or compound
statement. The expression acts as a decision maker and is usually a logical expression. The
statement is called the body of the loop. Note that the parentheses around the expression are
part of the syntax.
#include <iostream>
using namespace std;
int main()
{
int X = 0; //Line 1
while (x <= 20) //Line 2
{
cout << x << " "; //Line 3
x = x + 5; //Line 4
}
return 0;
In Line 1, the variable x is set to 0. The expression in the while statement (in Line 2), x <= 20, is
evaluated. Because the expression x <= 20 evaluates to true, the body of the while loop executes
next. The body of the while loop consists of the statements in Lines 3 and 4. The statement in Line
3 outputs the value of x, which is 0. The statement in Line 4 changes the value of x to 5. After
executing the statements in Lines 3 and 4, the expression in the while loop (Line 2) is evaluated
again. Because x is 5, the expression x <= 20 evaluates to true and the body of the while loop
executes again. This process of evaluating the expression and executing the body of
the while loop continues until the expression, x <= 20 (in Line 2), no longer evaluates to true.
1. The initial statement executes.
2. The loop condition is evaluated. If the loop condition evaluates to true:
1. Execute the for loop statement.
2. Execute the update statement (the third expression in the parentheses).
3. Repeat Step 2 until the loop condition evaluates to false.
#include <iostream>
using namespace std;
int main()
{
int x;
for (x = 0; x < 10 ; x++)
{
cout << x << " ";
}
cout << endl;
return 0;
}
do
statement
while (expression);
do-while Loop
The statement executes first, and then the expression is evaluated. If the expression evaluates
to true, the statement executes again. As long as the expression in a do…while statement is true,
the statement executes. To avoid an infinite loop, you must, once again, make sure that the loop
body contains a statement that ultimately makes the expression false and assures that it exits
properly.
#include <iostream>
using namespace std;
int main()
{
x = 0;
do {
cout << x << " ";
x = x + 5;
}while (x <= 20);
return 0;
}
x = x +5;
changes the value of x to 25 and so x <=20 becomes false, which halts the loop.
In a while and for loop, the loop condition is evaluated before executing the body of the
loop. Therefore, while and for loops are called pretest loops. On the other hand, the loop
condition in a do…while loop is evaluated after executing the body of the loop.
Therefore, do…while loops are called post-test loops. Because the while and for loops
both have entry conditions, these loops may never activate. The do…while loop, on the
other hand, has an exit condition and therefore always executes the statement at least
once. Looping Control Structures