C# IF, Switch, For, While 반복문 [예제]
⚡ 스마트 요약
C#의 조건문과 반복문은 논리에 따라 코드 블록을 실행하거나 반복함으로써 프로그램의 흐름을 제어합니다. if, switch, while, for 문을 사용하면 프로그램이 효율적으로 결정을 내리고 반복할 수 있습니다.

흐름 제어 및 조건문
흐름 제어 및 조건문은 모든 프로그래밍 언어에서 프로그램 흐름을 변경하는 데 사용할 수 있습니다.
예를 들어, 특정 논리에 따라 특정 명령 집합만 실행하려는 경우 흐름 제어와 조건문이 유용합니다.
C#에서 사용할 수 있는 다양한 문을 살펴보면서 더 잘 이해할 수 있을 것입니다.
아래 코드는 모두 Program.cs 파일로 만들어졌으니 참고하세요.
1) If 문
if 문은 일련의 명령들을 실행하기 전에 부울 표현식을 평가하는 데 사용됩니다. 표현식이 참으로 평가되면 하나의 명령 집합이 실행되고, 그렇지 않으면 다른 명령 집합이 실행됩니다.
아래 예시에서는 'value'라는 변수의 값을 비교합니다. 변수 값이 10보다 작으면 한 문장을 실행하고, 10 이상이면 다른 문장을 실행합니다.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Int32 value = 11; if(value<10) { Console.WriteLine("Value is less than 10"); } else { Console.WriteLine("Value is greater than 10"); } Console.ReadKey(); } } }
Code 설명:-
- 먼저 value라는 변수를 정의하고 값을 11로 설정합니다.
- 그런 다음 'if' 문을 사용하여 값이 변수의 10보다 작은지 확인합니다. 결과는 참이거나 거짓일 것입니다.
- if 조건이 true로 평가되면 "값이 10보다 작습니다"라는 메시지를 콘솔에 보냅니다.
- if 조건이 false로 평가되면 "값이 10보다 큼"이라는 메시지를 콘솔에 보냅니다.
위 코드를 올바르게 입력하여 프로그램이 성공적으로 실행되면 다음과 같은 출력이 표시됩니다.
출력:
'if' 문이 false로 평가되었음을 분명히 알 수 있습니다. 따라서 "값이 10보다 큼"이라는 메시지가 콘솔로 전송되었습니다.
2) 스위치 문
switch 문은 'if' 문이 향상된 것입니다. 한 번에 평가해야 하는 표현식이 여러 개 있는 경우 'if' 문을 여러 개 작성하는 것이 문제가 됩니다.
switch 문은 표현식을 평가하고 표현식 결과에 따라 다른 명령문을 실행하는 데 사용됩니다. 한 조건이 true로 평가되지 않으면 switch 문은 다음 조건으로 이동합니다.
아래 예시를 통해 어떻게 작동하는지 살펴보겠습니다. 여기에서도 'value'라는 변수의 값을 비교하고 있습니다. 값이 1인지, 2인지, 아니면 전혀 다른 값인지 확인합니다.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Int32 value=11; switch(value) { case 1: Console.WriteLine("Value is 1"); break; case 2: Console.WriteLine("Value is 2"); break; default: Console.WriteLine("value is different"); break; } } } }
Code 설명:-
- 먼저 'value'라는 변수를 정의하고 값을 11로 설정합니다.
- 그런 다음 'switch' 문을 사용하여 'value' 변수의 값을 확인합니다.
- Case 문은 다양한 조건을 설정하는 데 사용됩니다. 조건에 따라 일련의 명령문을 실행할 수 있습니다. switch 문에는 여러 개의 Case 조건이 있을 수 있습니다. 첫 번째 Case 문은 변수 값이 1인지 확인합니다.
- 첫 번째 Case 문이 true이면 "값은 1입니다"라는 메시지가 콘솔에 기록됩니다.
- break 문은 조건이 true일 때 전체 switch 문을 중단하는 데 사용됩니다.
- 기본 조건은 특수 조건입니다. 이는 케이스 표현식이 true로 평가되지 않으면 기본 조건에 대한 명령문 세트를 실행한다는 의미입니다.
위의 코드를 올바르게 입력하고 프로그램을 성공적으로 실행하면 다음과 같은 출력이 표시됩니다. 조건이 충족되지 않으므로 출력은 기본값 "Value is different"를 인쇄합니다.
출력:
3) while 루프
while 루프는 반복 목적으로 사용됩니다. 특정 횟수만큼 특정 명령문 세트를 반복하려는 경우 while 루프가 사용된다고 가정합니다.
아래 예에서는 while 문을 사용하여 변수 'i'의 값을 표시합니다. while 문을 사용하여 값을 3번 표시합니다.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Int32 value=3,i=0; while(i<value) { Console.WriteLine(i); i=i+1; } Console.ReadKey(); } } }
Code 설명:-
- 두 개의 정수 변수 하나는 값이고 다른 하나는 'i'로 정의됩니다. value 변수는 while 문을 반복해야 하는 상한으로 사용됩니다. 그리고 'i'는 반복 중에 처리될 변수입니다.
- while 문에서는 'i' 값이 상한값과 비교하여 지속적으로 확인됩니다.
- 여기서는 'i' 값을 콘솔에 표시합니다. 또한 'i'의 값을 증가시킵니다.
위 코드를 올바르게 입력하여 프로그램이 성공적으로 실행되면 다음과 같은 출력이 표시됩니다.
출력:
여기서 while 문이 3번 실행되고 동시에 증가하는 것을 볼 수 있습니다. 그리고 매번 변수 'i'의 현재 값을 표시했습니다.
4) 루프를 위해
'for' 루프는 반복적인 목적으로도 사용됩니다. 예를 들어, 특정 횟수만큼 특정 명령들을 반복 실행하고 싶다면 'for' 루프를 사용하면 됩니다.
아래 예에서는 'for' 문을 사용하여 변수 'i'의 값을 표시합니다. 'for' 문은 값을 3번 표시하는 데 사용됩니다.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { for(Int32 i=0;i<3;i++) { Console.WriteLine(i); } Console.ReadKey(); } } }
Code 설명:-
- 'for' 키워드는 'for 루프' 문을 시작하는 데 사용됩니다.
- 'for 루프'에서는 3가지를 정의합니다. 첫 번째는 'for 루프'에서 사용될 변수의 값을 초기화하는 것입니다.
- 두 번째는 'i'의 값을 상한과 비교하는 것입니다. 우리의 경우 상한은 3(i<3)의 값이다.
- 마지막으로 이에 따라 'i' 값을 증가시킵니다.
- 여기서는 'i' 값을 콘솔에 표시합니다.
위 코드를 올바르게 입력하여 프로그램이 성공적으로 실행되면 다음과 같은 출력이 표시됩니다.
출력:
여기서 'for' 문이 3번 실행되는 것을 볼 수 있습니다. 그리고 매번 변수 'i'의 현재 값을 표시했습니다.








