C# - Loops



There may be a situation, when you need to execute a block of code several number of times. In general, the statements are executed sequentially: The first statement in a function is executed first, followed by the second, and so on.

Programming languages provide various control structures that allow for more complicated execution paths.

C# Loops

A loop statement allows us to execute a statement or a group of statements multiple times and following is the general from of a loop statement in most of the programming languages −

Loop Architecture

Example

In the following example, we define an array and use the loop to display the elements of the array −

using System;
class Example {
   static void Main(string[] args) {
      int[] number = { 1, 2, 3, 5, 6 };
      
      for (int i = 0; i < number.Length; i++) {
         Console.WriteLine(number[i]);
      }
   }
}

Output

Following is the output −

1
2
3
5
6

Types of C# Loops

C# provides following types of loop to handle looping requirements. Click the following links to check their detail.

Sr.No. Loop Type & Description
1 while loop

It repeats a statement or a group of statements while a given condition is true. It tests the condition before executing the loop body.

2 for loop

It executes a sequence of statements multiple times and abbreviates the code that manages the loop variable.

3 do...while loop

It is similar to a while statement, except that it tests the condition at the end of the loop body

4 nested loops

You can use one or more loop inside any another while, for or do..while loop.

1. The while Loop

The while loop repeats a statement or a group of statements while a given condition is true. It tests the condition before executing the loop body.

The below is an example of a while loop in C#:

using System;

namespace LoopExample
{
    class Program
    {
        static void Main(string[] args)
        {
            // Using a while loop to print numbers from 1 to 5
            int i = 1;
            while (i <= 5)
            {
                Console.WriteLine("Number: " + i);
                i++;
            }
        }
    }
}

When the above code is compiled and executed, it produces the following result −

Number: 1
Number: 2
Number: 3
Number: 4
Number: 5

2. The for Loop

The for loop executes a sequence of statements multiple times and abbreviates the code that manages the loop variable.

The below is an example of a for loop in C#:

using System;

namespace LoopExample
{
    class Program
    {
        static void Main(string[] args)
        {
            // Using a for loop to print numbers from 1 to 5
            for (int i = 1; i <= 5; i++)
            {
                Console.WriteLine("Number: " + i);
            }
        }
    }
}

When the above code is compiled and executed, it produces the following result −

Number: 1
Number: 2
Number: 3
Number: 4
Number: 5

3. The do while Loop

The do...while loop is similar to a while statement, except that it tests the condition at the end of the loop body.

The below is an example of a do-while loop in C#:

using System;

namespace LoopExample
{
    class Program
    {
        static void Main(string[] args)
        {
            // Using a do-while loop to print numbers from 1 to 5
            int i = 1;
            do
            {
                Console.WriteLine("Number: " + i);
                i++;
            } while (i <= 5);
        }
    }
}

When the above code is compiled and executed, it produces the following result −

Number: 1
Number: 2
Number: 3
Number: 4
Number: 5

Loop Control Statements

Loop control statements change execution from its normal sequence. When execution leaves a scope, all automatic objects that were created in that scope are destroyed.

C# provides the following control statements. Click the following links to check their details.

Sr.No. Control Statement & Description
1 break statement

Terminates the loop or switch statement and transfers execution to the statement immediately following the loop or switch.

2 continue statement

Causes the loop to skip the remainder of its body and immediately retest its condition prior to reiterating.

Example

In the following example, we demonstrate how we can control the loop after getting the target using the break statement −

using System;
class Example {
   static void Main(string[] args) {
      int count = 10;
      
      for (int i = 0; i < count; i++) {
         if (i == 5) {
            break;
         }
         Console.WriteLine(i);
      }
   }
}

Output

Following is the output −

0
1
2
3
4

C# Infinite Loop

A loop becomes infinite loop if a condition never becomes false. The for loop is traditionally used for this purpose. Since none of the three expressions that form the for loop are required, you can make an endless loop by leaving the conditional expression empty.

Example

In the following example, we demonstrate how infinite loops will work −

using System;
namespace Loops {
   class Program {
      static void Main(string[] args) {
         for (; ; ) {
            Console.WriteLine("Hey! I am Trapped");
         }
      }
   }
} 

When the conditional expression is absent, it is assumed to be true. You may have an initialization and increment expression, but programmers more commonly use the for(;;) construct to signify an infinite loop.

Advertisements