C#에서 중첩된 if 문(nested if statement)이란 하나의 if 또는 else if 문 안에 또 다른 if 또는 else if 문을 포함시키는 구조를 말합니다. 이 방식은 여러 조건을 순차적으로 검사해야 할 때 유용하며, 바깥쪽 조건이 참일 때만 안쪽 조건을 확인하게 됩니다.
중첩 if 문의 기본 문법
중첩 if 문의 기본적인 작성 형식은 다음과 같습니다.
if( boolean_expression 1) {
/* boolean_expression 1이 참일 때 실행됨 */
if(boolean_expression 2) {
/* boolean_expression 2가 참일 때 실행됨 */
}
}중첩 if 문 동작 원리
먼저 바깥쪽의 첫 번째 조건식을 평가합니다. 이 조건이 참(true)이면 내부 블록으로 진입하여 두 번째 조건식을 검사합니다. 만약 바깥쪽 조건이 거짓(false)이라면, 안쪽에 있는 코드는 아예 실행되지 않습니다.
C# 중첩 if 문 예제
다음 예제는 두 개의 if 문을 중첩하여 두 가지 조건을 각각 검사합니다. 변수 a가 5인지 먼저 확인하고, 그 조건이 참일 때 변수 b가 10인지 추가로 검사한 후 메시지를 출력합니다.
if (a == 5) {
/* 조건이 참이면 아래를 검사 */
if (b == 10) {
/* 조건이 참이면 다음을 출력 */
Console.WriteLine("Value of a is 5 and b is 10");
}
}전체 예제 코드
아래는 위 로직을 포함한 완전한 C# 프로그램입니다.
using System;
namespace Demo {
class Program {
static void Main(string[] args) {
/* 지역 변수 선언 및 초기화 */
int a = 5;
int b = 10;
/* 불리언 조건 검사 */
if (a == 5) {
/* 조건이 참이면 아래를 검사 */
if (b == 10) {
/* 조건이 참이면 다음을 출력 */
Console.WriteLine("Value of a is 5 and b is 10");
}
}
Console.WriteLine("Exact value of a is : {0}", a);
Console.WriteLine("Exact value of b is : {0}", b);
Console.ReadLine();
}
}
}실행 결과
위 프로그램을 실행하면 다음과 같은 결과가 출력됩니다.
Value of a is 5 and b is 10 Exact value of a is : 5 Exact value of b is : 10
중첩 if 문 사용 시 주의할 점
중첩 if 문은 강력하지만, 너무 깊게 중첩하면 코드의 가독성이 크게 떨어질 수 있습니다. 일반적으로 2~3단계 이상의 중첩은 피하고, 필요하다면 논리 연산자(&&, ||)를 활용해 조건을 하나로 결합하거나, 별도의 메서드로 분리하는 것이 좋습니다.