C# While Loop
C# While Loop is used to execute a set of statements in a loop based on a condition.
Syntax of C# While
Following is the syntax of While Loop in C#.
while(condition){
/* statement(s) */
}
where
while
is the keyword.condition
is a boolean expression.statement(s)
are a set of C# statements which will be executed in a loop.
Example 1 – C# While Loop
Following program is a simple example for while loop. The C# program prints numbers from 5 to 9.
Program.cs
using System;
namespace CSharpExamples {
class Program {
static void Main(string[] args) {
int a=5;
while(a<=9){
Console.WriteLine(a);
a++;
}
}
}
}
Output
PS D:\workspace\csharp\HelloWorld> dotnet run
5
6
7
8
9
How does C# While Works?
Step 1: The program control enters the while loop by checking the condition.
Step 2: If the condition evaluates to true, then the statement(s) inside while loop are executed.
Step 3: After executing all the statement(s), the condition is again checked. Step 2 and Step 3 are executed in a loop until condition evaluates to false.
Step 4: If the condition evaluates to false, the program control comes out of while loop, and the execution of while loop statement is completed.
Example 2 – While Loop with Break
In this example, we will use a break
statement to come out of the loop prematurely (without condition becoming false).
Program.cs
using System;
namespace CSharpExamples {
class Program {
static void Main(string[] args) {
int a=5;
while(a<=9){
Console.WriteLine(a);
a++;
if(a==8){
break;
}
}
}
}
}
When the value of a
becomes 8
, break
statement is executed and the program control comes out of the while loop.
Output
PS D:\workspace\csharp\HelloWorld> dotnet run
5
6
7
Nested While Loop in C#
We can place while loop inside a while loop. Following example demonstrates how.
Example 3 – While Loop inside While Loop
In this example, we will write a while loop inside another while loop, making it a nested while loop.
Program.cs
using System;
namespace CSharpExamples {
class Program {
static void Main(string[] args) {
int a=1;
while(a<4){
int b=1;
while(b<3){
Console.WriteLine(a+"."+b);
b++;
}
a++;
}
}
}
}
Output
PS D:\workspace\csharp\HelloWorld> dotnet run
1.1
1.2
2.1
2.2
3.1
3.2
Infinite While Loop
We can write a while loop that gets executed infinitely in a loop. All you have to do is provide true
in place of condition and no break
statement in the while loop.
Example 4 – C# Infinite While Loop
The following program prints number starting from 1. When it reaches the limit of integer datatype in C#, the sign bit is overflowed and you will see negative numbers and then positive numbers again and so on.
Program.cs
using System;
namespace CSharpExamples {
class Program {
static void Main(string[] args) {
int a=1;
while(true){
Console.WriteLine(a++);
}
}
}
}
Output
Only part of the output is provided here.
PS D:\workspace\csharp\HelloWorld> dotnet run
1
2
3
4
5
6
.....
Conclusion
In this C# Tutorial, we learned the syntax of C# while loop and usage of while loop in different scenarios like: nested while loops, infinite loop, while loop with break statement, etc.