Notice
Link
반응형
«   2025/04   »
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
Archives
관리 메뉴

MyCodeStory

[C#] Switch 문 본문

언어/C# .NET

[C#] Switch 문

Code0Kim 2025. 3. 28. 01:07
반응형

C#에서 switch 문은 여러 조건을 처리할 때 유용합니다. 특정 값에 따라 다른 코드 블록을 실행할 수 있어요.

🔹 switch 문 기본 구조

switch (변수)
{
    case 값1:
        // 실행할 코드
        break;
    case 값2:
        // 실행할 코드
        break;
    default:
        // 위의 case와 일치하는 값이 없을 때 실행할 코드
        break;
}

 

 


🔹 예제 1: 요일 출력하기

사용자가 입력한 숫자(1~7)에 따라 요일을 출력하는 코드입니다.

using System;

class Program
{
    static void Main()
    {
        Console.Write("요일을 나타내는 숫자(1~7)를 입력하세요: ");
        int day = int.Parse(Console.ReadLine());

        switch (day)
        {
            case 1:
                Console.WriteLine("월요일입니다.");
                break;
            case 2:
                Console.WriteLine("화요일입니다.");
                break;
            case 3:
                Console.WriteLine("수요일입니다.");
                break;
            case 4:
                Console.WriteLine("목요일입니다.");
                break;
            case 5:
                Console.WriteLine("금요일입니다.");
                break;
            case 6:
                Console.WriteLine("토요일입니다.");
                break;
            case 7:
                Console.WriteLine("일요일입니다.");
                break;
            default:
                Console.WriteLine("잘못된 입력입니다.");
                break;
        }
    }
}

 


🔹 예제 2: 학점 출력하기

학생의 점수를 기준으로 학점을 출력하는 코드입니다.

using System;

class Program
{
    static void Main()
    {
        Console.Write("점수를 입력하세요: ");
        int score = int.Parse(Console.ReadLine());

        switch (score / 10)  // 점수를 10으로 나눈 몫을 기준으로 비교
        {
            case 10:
            case 9:
                Console.WriteLine("A 학점입니다.");
                break;
            case 8:
                Console.WriteLine("B 학점입니다.");
                break;
            case 7:
                Console.WriteLine("C 학점입니다.");
                break;
            case 6:
                Console.WriteLine("D 학점입니다.");
                break;
            default:
                Console.WriteLine("F 학점입니다.");
                break;
        }
    }
}

 


🔹 예제 3: switch 문을 이용한 계산기

연산자(+, -, *, /)를 입력받아 연산을 수행하는 간단한 계산기 예제입니다.

using System;

class Program
{
    static void Main()
    {
        Console.Write("첫 번째 숫자를 입력하세요: ");
        double num1 = double.Parse(Console.ReadLine());

        Console.Write("연산자를 입력하세요 (+, -, *, /): ");
        char op = char.Parse(Console.ReadLine());

        Console.Write("두 번째 숫자를 입력하세요: ");
        double num2 = double.Parse(Console.ReadLine());

        switch (op)
        {
            case '+':
                Console.WriteLine($"결과: {num1 + num2}");
                break;
            case '-':
                Console.WriteLine($"결과: {num1 - num2}");
                break;
            case '*':
                Console.WriteLine($"결과: {num1 * num2}");
                break;
            case '/':
                if (num2 != 0)
                    Console.WriteLine($"결과: {num1 / num2}");
                else
                    Console.WriteLine("0으로 나눌 수 없습니다.");
                break;
            default:
                Console.WriteLine("잘못된 연산자입니다.");
                break;
        }
    }
}

 


🔹 switch 문에서 goto case 사용하기

여러 case에서 동일한 코드를 실행할 때 goto case를 활용할 수 있어요.

using System;

class Program
{
    static void Main()
    {
        Console.Write("과일을 입력하세요(사과, 바나나, 오렌지): ");
        string fruit = Console.ReadLine();

        switch (fruit)
        {
            case "사과":
            case "오렌지":
                Console.WriteLine("이 과일은 비타민C가 풍부합니다.");
                break;
            case "바나나":
                Console.WriteLine("바나나는 칼륨이 풍부합니다.");
                break;
            default:
                Console.WriteLine("정보가 없습니다.");
                break;
        }
    }
}

 

 

반응형

'언어 > C# .NET' 카테고리의 다른 글

[C#] Type Conversion 형 변환  (0) 2025.03.28
[C#] While 문  (0) 2025.03.28
[C#] For 문  (0) 2025.03.28
[C#] IF 문  (0) 2025.03.28
[C언어] 개념 정리  (1) 2025.03.28