Notice
Recent Posts
Recent Comments
Link
«   2026/05   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
Archives
Today
Total
관리 메뉴

I'm FanJae.

[20260405] C# - 조건문 본문

Unity/Unity 초격차캠프

[20260405] C# - 조건문

FanJae 2026. 4. 5. 09:15

1. 조건문이란?

- 컴퓨터에게 판단 기준을 알려주는 문법이다.

2. 조건문의 종류

종류 설명 언제 쓰면 좋을까? 예시
if / else if / else 가장 기본적인 조건문. 조건이 다양하거나 복잡할 때 사용 나이에 따라 다른 메시지를 보여줄 때 if (age > 18) { ... }
switch 변수 값이 정해져있는 경우 사용 다수의 경우를 비교할 때 간결하게 사용 요일, 메뉴 번호, 등급 판별 등 switch(score) { case 90: ... }
삼항 연산자 (?:) 간단한 if-else를 한 줄로 표현할 때 사용 조건에 따라 값만 바꿀 때 string result = age >= 20 ? "성인" : "미성년자";

2-1. if / else if / else

일반적으로 가장 많이 쓰는 조건문이다
if 조건문은 조건이 참이면 { } 안의 코드를 실행한다.

중괄호를 생략한 경우에는 if 조건문 바로 다음에 오는 한 문장만 실행된다.

else if는 앞의 if 조건이 참이 아닐 때 실행되며, 새로운 조건을 다시 확인한다.

elseif 또는 else if모든 조건이 만족되지 않을 때 실행된다.

else ifelse는 단독으로 사용할 수 없고, 반드시 if 문장 뒤에서만 사용할 수 있다.

if 만 사용하는 경우

int age = 25;

if (age >= 65)
{
    Console.WriteLine("노년기");
}

- age가 65 이상이 아니기 때문에, 아무것도 출력하지 않는다.

if, else를 사용하는 경우

int age = 25;

if (age >= 65)
{
    Console.WriteLine("노년기");
}
else
{
    Console.WriteLine("노년기가 아닙니다");
}

- 앞선 예제와 다르게, 65세 이상의 case에 대해서 노년기가 아닙니다를 출력하도록 하고 있다.

if, else if, else를 모두 사용하는 경우

int age = 25;

if (age >= 65)
{
    Console.WriteLine("노년기");
}
else if (age >= 20)
{
    Console.WriteLine("성인");
}
else
{
    Console.WriteLine("청소년");
}

- age의 값이 25니까 성인을 출력할 것이다.

2-2. switch

switch문은 하나의 변수나 식의 값을 여러 경우와 비교하여, 일치하는 경우의 코드를 실행하는 조건문이다.
주로 비교 대상이 명확하게 정해져 있고, 가능한 경우의 수가 여러 개일 때 사용한다.

case비교할 각각의 경우를 나타내며, switch문의 값과 일치하면 해당 위치부터 코드를 실행한다.

default어떤 case와도 일치하지 않을 때 실행되는 영역으로, if문의 else와 비슷한 역할을 한다.

int menu = 2;

switch (menu)
{
    case 1:
        Console.WriteLine("김치찌개");
        break;
    case 2:
        Console.WriteLine("된장찌개");
        break;
    case 3:
        Console.WriteLine("비빔밥");
        break;
    default:
        Console.WriteLine("없는 메뉴예요!");
        break;
}

- switch 문에서는 각 case에 대해 반드시 break문이 포함되어야 한다.

2-3. 삼항 연산자 (?:)

삼항 연산자는 조건에 따라 두 값 중 하나를 선택할 때 사용하는 연산자이다.

주로 간단한 if-else를 한 줄로 표현할 때 사용되며, 짧고 간단한 조건일 때 쓰기 좋다.

int age = 17;
string result = (age >= 18) ? "성인" : "미성년자";
// 나이가 18세 이상이면, 성인 아니면 미성년자로 구분

Console.WriteLine(result); // age가 17 이므로 미성년자 입니다.

 

3. 실제 사용 예시

namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            int age = 21;
            bool hasCoupon = true;

            if (age >=20 || hasCoupon == true)
            {
                Console.WriteLine("입장 가능합니다.");
            }
            else
            {
                Console.WriteLine("입장 불가입니다.");
            }
        }
    }
}
/*
놀이기구 탑승 관련 제한
나이 : 7세 이상 ~ 70세 미만
키 제한 : 105cm 이상 190cm 이하
*/

namespace ConsoleApp2
{
    internal class Program
    {
        static void Main(string[] args)
        {
            int age = 10;
            int height = 120;

            if (age < 7)
            {
                Console.WriteLine("탑승 불가: 나이 제한에 해당합니다.");
            }
            else if (age >= 70)
            {
                Console.WriteLine("탑승 불가: 나이 제한에 해당합니다.");
            }
            else if (height < 105)
            {
                Console.WriteLine("탑승 불가: 키가 너무 작습니다.");
            }
            else if (height > 190)
            {
                Console.WriteLine("탑승 불가: 키가 제한을 초과합니다.");
            }
            else
            {
                Console.WriteLine("탑승 가능합니다.");
            }
        }
    }
}

```
/*
놀이기구 탑승 관련 제한
나이 : 7세 이상 ~ 70세 미만
키 제한 : 105cm 이상 190cm 이하
*/

namespace ConsoleApp2
{
    internal class Program
    {
        static void Main(string[] args)
        {
            int age = 10;
            int height = 120;

            string result = (age >= 7 && age < 70 && height >= 105 && height <= 190)
            ? "탑승 가능합니다."
            : "탑승 불가입니다.";
            
            Console.WriteLine(result);
        }
    }
}

```

조건문은 요구 사항에 따라 적절한 형태를 선택하여 사용해야 한다.

 

4. 관련 문서

Microsoft, 「Selection 문 - if, if-else및 switch」 , https://learn.microsoft.com/ko-kr/dotnet/csharp/language-reference/statements/selection-statements

 
Comments