do while Loop in C# Programming Language
Table of Content:
Unlike for and while loops, which test the loop condition at the start of the loop, the do...while loop checks its condition at the end of the loop.
A do...while loop is similar to a while loop, except that a do...while loop is guaranteed to execute at least one time.
Syntax
The syntax of a do...while loop in C# is ?
do { statement(s); } while( condition );
Notice that the conditional expression appears at the end of the loop, so the statement(s) in the loop execute once before the condition is tested.
If the condition is true, the flow of control jumps back up to do, and the statement(s) in the loop execute again. This process repeats until the given condition becomes false.
Flow Diagram
Example
using System; namespace Loops { class Program { static void Main(string[] args) { /* local variable definition */ int a = 10; /* do loop execution */ do { Console.WriteLine("value of a: {0}", a); a = a + 1; } while (a < 20); Console.ReadLine(); } } }
When the above code is compiled and executed, it produces the following result ?
value of a: 10 value of a: 11 value of a: 12 value of a: 13 value of a: 14 value of a: 15 value of a: 16 value of a: 17 value of a: 18 value of a: 19
break inside do-while
Just as in the case of the for and while loops, you can break out of the do-while loop using the break keyword.
Syntax
int i = 0; do { Console.WriteLine("Value of i: {0}", i); i++; if (i > 5) break; } while (true);
Output
Value of i: 0 Value of i: 1 Value of i: 2 Value of i: 3 Value of i: 4 Value of i: 5
Nested do-while
The do-while loop can be used inside another do-while loop.
Syntax
int i = 0; do { Console.WriteLine("Value of i: {0}", i); int j = i; i++; do { Console.WriteLine("Value of j: {0}", j); j++; } while (j < 2); } while (i < 2);
Output
Value of i: 0 Value of j: 0 Value of j: 1 Value of i: 1 Value of j: 1
- The do-while loop executes the block of code repeatedly.
- The do-while loop executes the code at least once. It includes the conditional expression after the code block and the increment/decrement step should be inside the loop.
- Use the break keyword to stop the execution and exit from a do-while loop.
- A nested do-while loop is allowed.