English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C# for 루프

여기서는 for 루프를 사용하는 방법, for 루프의 구조, 내부 for 루프가 여러 번 실행하는 문장 또는 코드 블록, 그리고 for 루프를 종료하는 방법을 배울 것입니다.

for 키워드는 C#에서의 루프를 나타냅니다. for 루프는 지정된 조건이 false를 반환하기까지 반복적으로 문장 블록을 실행합니다.

문법:

for (initializer; condition; iterator)
{    
   //코드 블록 
}

for 루프는 세 가지 선택적인 부분을 포함하며, 세미콜론으로 구분됩니다:

Initializer: 은 변수를 초기화하고, 이 변수는 for 루프의 로컬 변수이며 루프 외부에서 접근할 수 없습니다. 또한, 0개 또는 여러 가지 대입 문장, 메서드 호출, 증가 또는 감소 표현식(예:)++i 또는 i++및 await 표현식을 포함합니다.

Condition:조건은布尔 표현식으로, true 또는 false를 반환합니다. 표현식의 계산 결과가 true라면, 루프를 다시 실행합니다; 그렇지 않으면 루프를 종료합니다.

Iterator:이터레이터는 반복 변수의 증가 또는 감소를 정의합니다.

아래의 for 루프는 코드 블록을 실행합니다10번.

for (int i = 0; i < 10; i++)
{
    Console.WriteLine("i의 값: {0}", i);
}

시도해보세요:

i의 값: 0
i의 값: 1
i의 값: 2
i의 값: 3
i의 값: 4
i의 값: 5
i의 값: 6
i의 값: 7
i의 값: 8
i의 값: 9

위의 예제에서 int i = 0은 초기화 문입니다. 우리는 int를 정의했습니다 변수 i를 0으로 초기화합니다. 두 번째 부분은 조건 표현식 i < 10이 조건이 반환하면 true라면 코드 블록을 실행합니다. 코드 블록을 실행한 후, 그는 세 번째 부분으로 이동합니다. i+ + 는 반복 변수 i를 의 값이 증가합니다1지금, 그것은 조건 표현식을 다시 확인하고, 조건 표현식이 false를 반환하기까지 같은 작업을 반복합니다. 아래 그림은 for 루프의 실행 단계를 설명합니다.

下图说明了 for 循环的执行步骤。

for循环执行步骤

如果一个代码块仅包含一个语句,则无需将其包装在大括号 { } 内,如下所示。

 예제: for 루프

for (int i = 0; i < 10; i++){
  Console.WriteLine("i의 값: {0}", i);
}

Initializer, condition, Iterator 부분은 선택 사항입니다. 변수를 초기화하고 코드 블록 내에서 조건과 반복 인터베이터를 정의할 수 있습니다.

 예제: for 루프 C#

int i = 0;
for(;;)
{
    if (i < 10)
    {
      Console.WriteLine("i의 값: {0}", i);
      i++;
    } else {
       break;
    }
}
출력:
i의 값: 0
i의 값: 1
i의 값: 2
i의 값: 3
i의 값: 4
i의 값: 5
i의 값: 6
i의 값: 7
i의 값: 8
i의 값: 9

 이 세 부분이 for 루프에서 모두 선택 사항이므로, 조건과 반복 인터베이터를 정의할 때 주의해야 합니다. 그렇지 않으면 무한 루프가 될 수 있으며, 루프가 결코 끝나지 않습니다.

for (; ; )
{
    Console.Write(1);
}
출력:
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ....

for 루프의 제어 변수는 double, decimal 등과 같은 모든 숫자 데이터 타입일 수 있습니다.

for (double d = 1.01D; d < 1.10; d+= 0.01D)
{
    Console.WriteLine("i의 값: {0}", d);
}
출력:
i의 값: 1.01
i의 값: 1.02
i의 값: 1.03
i의 값: 1.04
i의 값: 1.05
i의 값: 1.06
i의 값: 1.07
i의 값: 1.08
i의 값: 1.09

for 루프의 단계 부분은 변수의 값을 증가하거나 감소시킬 수 있습니다.

for (int i = 10; i > 0; i--)
{
    Console.WriteLine("i의 값: {0}", i);
}
출력:
i의 값: 10
i의 값: 9
i의 값: 8
i의 값: 7
i의 값: 6
i의 값: 5
i의 값: 4
i의 값: 3
i의 값: 2
i의 값: 1

退出for循环

you can also use the break keyword to exit the for loop.

for (int i = 0; i < 10; i++)
{
    if (i == 5 )
        break;
    Console.WriteLine("i의 값: {0}", i);
}
출력:
i의 값: 0
i의 값: 1
i의 값: 2
i의 값: 3
i의 값: 4

여러 표현식

for 루프는 여러 표현식을 포함할 수 있으며, 다음과 같이 구성할 수 있습니다.

for (int i = 0, j = 0; i+j < 5; i++, j++)
{
    Console.WriteLine("i의 값: {0}, J: {1} ", i,j);
}
출력:
i의 값: 0, J: 0 
i의 값: 1, J: 1 
i의 값: 2, J: 2

for 루프는 초기 값 설정 항과 반복 인터베이터로 구성된 문장을 포함할 수 있습니다.

int i = 0, j = 5;
for (Console.WriteLine($"初始化자: i={i}, j={j}"); 
    i++ < j--; 
    Console.WriteLine($"迭代器: i={i}, j={j}"))
    {
    }

출력:

이니셜라이저:i = 0,j = 5
이터레이터:i = 1,j = 4  
이터레이터:i = 2,j = 3  
이터레이터:i = 3,j = 2

중첩 루프

C#은 다른 for 루프 내에서 for 루프를 허용합니다。

for (int i = 0; i < 2; i++)
{
    for(int j =i; j < 4; j++){
       Console.WriteLine("i의 값: {0}, J: {1} ", i,j);
    }
        
}
출력:
i의 값:0,J:0 
i의 값:0,J:1  
i의 값:0,J:2  
i의 값:0,J:3  
i의 값:1,J:1  
i의 값:1 ,J:2  
i의 값:1,J:3