THE WORLD'S LARGEST WEB DEVELOPER SITE

C# For Loop


C#For循环

When you know exactly how many times you want to loop through a block of code, use the for loop instead of a while loop:

Syntax

for (statement 1; statement 2; statement 3) 
{
  // code block to be executed
}

Statement 1 is executed (one time) before the execution of the code block.

Statement 2 defines the condition for executing the code block.

Statement 3 is executed (every time) after the code block has been executed.

The example below will print the numbers 0 to 4:

Example

for (int i = 0; i < 5; i++) 
{
  Console.WriteLine(i);
}

来试试吧 »

Example explained

Statement 1 sets a variable before the loop starts (int i = 0).

Statement 2 defines the condition for the loop to run (i must be less than 5). If the condition is true, the loop will start over again, if it is false, the loop will end.

Statement 3 increases a value (i++) each time the code block in the loop has been executed.


Another Example

This example will only print even values between 0 and 10:

Example

for (int i = 0; i <= 10; i = i + 2) 
{
  Console.WriteLine(i);
}

来试试吧 »


The foreach Loop

There is also a foreach loop, which is used exclusively to loop through elements in an array:

Syntax

foreach (type variableName in arrayName) 
{
  // code block to be executed
}

The following example outputs all elements in the cars array, using a foreach loop:

Example

string[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
foreach (string i in cars) 
{
  Console.WriteLine(i);
}

来试试吧 »

Note: Don't worry if you don't understand the example above. You will learn more about Arrays in the C#数组 chapter.


C# 练习

Test Yourself With 练习

Exercise:

Use a for loop to print "Yes" 5 times:

 (int i = 0; i < 5; ) 
{
  Console.WriteLine("Yes");
}

Start the Exercise





W3Schools is optimized for learning and training. 示例 might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2021 by Refsnes Data. All Rights Reserved.
W3Schools is Powered by W3.CSS.

W3Schools.com