C# 조건문 (if, else, switch)
발행: (2026년 1월 16일 오후 09:43 GMT+9)
3 min read
원문: Dev.to
Source: Dev.to
if Statement
if 문은 조건이 true일 때 블록을 실행합니다.
int number = 10;
if (number > 5)
{
Console.WriteLine("Number is greater than 5.");
}
if‑else Statement
조건이 false일 때 대체 블록을 실행하려면 else를 사용합니다.
Console.Write("Enter your grade: ");
int grade = int.Parse(Console.ReadLine()); // convert from string to int
if (grade >= 50)
{
Console.WriteLine("You passed.");
}
else
{
Console.WriteLine("You failed.");
}
if‑else if‑else
else if를 사용해 순차적으로 여러 조건을 검사합니다.
int grade = 75;
if (grade >= 90)
{
Console.WriteLine("Grade: A");
}
else if (grade >= 70)
{
Console.WriteLine("Grade: B");
}
else if (grade >= 50)
{
Console.WriteLine("Grade: C");
}
else
{
Console.WriteLine("Failed");
}
switch Statement
고정된 값에 따라 실행을 분기하려면 switch를 사용합니다. 많은 else if 블록보다 가독성이 좋습니다.
Console.Write("Enter day number (1-7): ");
int day = int.Parse(Console.ReadLine());
switch (day)
{
case 1: Console.WriteLine("Monday"); break;
case 2: Console.WriteLine("Tuesday"); break;
case 3: Console.WriteLine("Wednesday"); break;
case 4: Console.WriteLine("Thursday"); break;
case 5: Console.WriteLine("Friday"); break;
case 6: Console.WriteLine("Saturday"); break;
case 7: Console.WriteLine("Sunday"); break;
default: Console.WriteLine("Invalid day!"); break;
}
User Input with Decision Structures
결정 구조는 종종 사용자 입력에 의존합니다.
Console.Write("Enter a number: ");
int number = int.Parse(Console.ReadLine());
if (number % 2 == 0)
{
Console.WriteLine("The number is even.");
}
else
{
Console.WriteLine("The number is odd.");
}
Summary
if: 조건이 참일 때 실행됩니다.else: 조건이 거짓일 때 실행됩니다.else if: 여러 조건을 순차적으로 검사합니다.switch: 고정된 값에 따라 분기합니다.
Menu Example: Using if, else if, else and switch
조건 및 선택 구조를 결합한 간단한 콘솔 기반 메뉴 시스템.
using System;
class Program
{
static void Main()
{
Console.WriteLine("=== Menu ===");
Console.WriteLine("1 - Addition");
Console.WriteLine("2 - Subtraction");
Console.WriteLine("3 - Multiplication");
Console.WriteLine("4 - Division");
Console.WriteLine("0 - Exit");
Console.Write("Enter your choice: ");
int choice = int.Parse(Console.ReadLine()); // convert from string to int
if (choice == 0)
{
Console.WriteLine("Exiting program...");
}
else if (choice >= 1 && choice <= 4)
{
Console.Write("Enter the first number: ");
double num1 = double.Parse(Console.ReadLine());
Console.Write("Enter the second number: ");
double num2 = double.Parse(Console.ReadLine());
switch (choice)
{
case 1:
Console.WriteLine($"Result: {num1 + num2}");
break;
case 2:
Console.WriteLine($"Result: {num1 - num2}");
break;
case 3:
Console.WriteLine($"Result: {num1 * num2}");
break;
case 4:
if (num2 != 0)
Console.WriteLine($"Result: {num1 / num2}");
else
Console.WriteLine("Error: Division by zero is not allowed!");
break;
}
}
else
{
Console.WriteLine("Invalid choice.");
}
}
}