[C#] 반복문

김승태·2025년 3월 13일

C#

목록 보기
5/13

🔁 반복문 (Loop Statements)


✅ for문

for (초기화; 조건식; 증감연산)
초기화 → 조건 확인 → 블럭 실행 → 증감 의 흐름으로 반복 실행
i는 지역 변수로, for문 블럭 안에서만 사용 가능


1️⃣ 증가 연산자 사용

for (int i = 0; i < 4; i++) // 4번 반복
{
    Console.WriteLine($"{i}번째 문장입니다.");
}

📌 출력:

0번째 문장입니다.
1번째 문장입니다.
2번째 문장입니다.
3번째 문장입니다.

2️⃣ 감소 연산자 사용

for (int j = 3; j >= 0; j--)
{
    Console.WriteLine($"{j}번째 문장입니다.");
}

📌 출력:

3번째 문장입니다.
2번째 문장입니다.
1번째 문장입니다.
0번째 문장입니다.

3️⃣ 조건문과 함께 사용 (짝/홀수 판별)

for (int i = 0; i < 10; i++)
{
    if (i % 2 == 0)
    {
        Console.WriteLine($"{i}는 짝수입니다.");
    }
    else
    {
        Console.WriteLine($"{i}는 홀수입니다.");
    }
}

📌 출력:

0는 짝수입니다.
1는 홀수입니다.
2는 짝수입니다.
...
9는 홀수입니다.

4️⃣ 이중 반복문 (중첩 반복문)

반복문 안에 또 다른 반복문이 있는 형태
외부 반복문 1회 → 내부 반복문 전체 실행
중첩이 깊을수록 시간 복잡도 증가O(N^n)

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

📌 출력:

i의 값: 0, j의 값: 0
i의 값: 0, j의 값: 1
i의 값: 0, j의 값: 2
i의 값: 1, j의 값: 0
i의 값: 1, j의 값: 1
i의 값: 1, j의 값: 2

📌 응용 예시 - 구구단

for (int dan = 1; dan <= 9; ++dan)
{
    Console.WriteLine($"{dan}단\n");

    for (int num = 1; num <= 9; ++num)
    {
        Console.WriteLine($"{dan} * {num} = {dan * num}");
    }

    Console.WriteLine("\n---------------------------------\n");
}

📌 출력 (일부 생략):

1단

1 * 1 = 1
...
1 * 9 = 9

---------------------------------

2단

2 * 1 = 2
...

✅ while문

while(조건식)
조건식이 true인 동안 반복 실행
무한 루프 주의 필요

while (조건식)
{
    // 반복으로 실행할 코드
}

✅ do ~ while문

블럭을 최소 한 번 실행 후, 조건에 따라 반복
while 뒤에 반드시 세미콜론(;) 붙여야 함

do
{
    // 반복으로 실행할 코드 (최소 1회 실행)
}
while (조건식);

📌 입력 예시

int select;
do
{
    Console.WriteLine("1 ~ 5 사이의 수를 입력하세요");
    string input = Console.ReadLine();
    int.TryParse(input, out select);
}
while (select >= 1 && select <= 9);

🛑 break 제어문

가장 가까운 반복문을 즉시 종료

int water = 1000;

while (water != 0)
{
    Console.WriteLine("물을 100ml 마십니다.");
    water -= 100;
    Console.WriteLine($"잔여량은 {water}ml 입니다.\n");
    break;
}

📌 출력:

물을 100ml 마십니다.
잔여량은 900ml 입니다.

🔁 continue 제어문

반복문의 이번 루프만 건너뛰고, 다음 루프로 이동
반복문 전체 종료는 아님

for (int i = 0; i < 7; i++)
{
    if (i % 2 != 0)
    {
        continue; // 홀수 건너뛰기
    }
    Console.WriteLine($"{i}번 출력입니다.");
}

📌 출력:

0번 출력입니다.
2번 출력입니다.
4번 출력입니다.
6번 출력입니다.
profile
긍정머신

0개의 댓글