상세 컨텐츠

본문 제목

C# 기초 - 조건문( if ~ else 문 )

프로그래밍 언어/C#

by 개살기 2024. 5. 18. 17:32

본문

 

오늘은 조건문에 대해서 알아보겠습니다.

 

코드의 흐름에 영향을 주는 조건문

코드는 작성한 순서대로 위에서 아래로 흘러갑니다. 하지만 조건문을 조건에 따라 코드의 실행을 제어합니다. 조건에 의해 코드의 순서가 바뀔 수도 있고 건너뛸 수도 있습니다.

 

코딩을 할 때 다른 언어에서도 가장 많이 쓰는 문법 중 하나입니다.

프로그램은 조건 문과 나중에 배울 반복문으로 이루어져 있다 해도 과언이 아닙니다. 매우 중요하니 잘 숙지하시길 바랍니다.

 

if 문

if ( 조건식 ) {

    // 실행할 코드

}

if 문의 문법입니다. 조건식이 true라면 {}(중괄호) 안에 코드가 실행됩니다.

 

예시) 

namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            bool _boolTrue = true;
            bool _boolFalse = false;

            if (_boolTrue) 
            {
                Console.WriteLine("조건이 true라 실행됩니다.");
            }

            if(_boolFalse) 
            {
                Console.WriteLine("조건이 False라 실행이 되지 않습니다.");
            }
        }
    }
}

 

결과

조건이 true라 실행됩니다.

 

위 결과와 같이 if 문 괄호 안에 조건이 true 일 때만 코드가 실행됩니다. 불린 값을 직접 넣는 것이 아닌 비교 연산자 논리 연산자 등을 사용해 반환값이 불린인 조건을 넣습니다.

 

예시)

namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            byte a = 5;
            byte b = 4;
            byte c = 3;
            
            if (a > b && b < c ) 
            {
                Console.WriteLine("조건이 틀리면 실행되지 않습니다.");
            }

            if (b != c || a % b == 1)
            {
                Console.WriteLine("조건이 true라 실행됩니다.");
            }
        }
    }
}

 

결과

조건이 true라 실행됩니다.

 

이런 식으로 비교 연산자와 논리 연산자로 조건식을 만들어 많이 사용하니 잘 숙지하시길 바랍니다.

 

if ~ else 문

if( 조건식 )

{

    //조건식이 True 일 때 실행할 코드 

}

else 

{

    //조건식이 False 일 때 실행할 코드

}

if ~ else 문의 문법입니다. 조건식이 true 이면 if문 안에 코드가 실행되고 false 이면 else문 안의 코드가 실행됩니다. 

 

예시)

namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            bool _bool = false;
            if (_bool) 
            {
                Console.WriteLine("조건이 틀려 실행되지 않습니다.");
            }
            else
            {
                Console.WriteLine("조건이 틀려 else문이 실행 됩니다.");
            }
        }
    }
}

 

결과

조건이 틀려 else문이 실행 됩니다.

 

if ~ else if ~ else 문

if( 조건식1 )

{

    //조건식1이 true 일 때 실행될 코드

}

else if( 조건식2 )

{

    //조건식2이 true 일 때 실행될 코드

}

else

{

    //조건식 1,2가 모두 틀렸을 때 실행될 코드

}

if ~ else if ~ else 문의 문법입니다. 여러 조건에 따라 실행할 코드를 설정할 수 있습니다. 조건이 맞는게 없으면 else문이 실행됩니다.

 

예시)

namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            bool _boolFalse = false;
            bool _boolTrue = true;
            if (_boolFalse) 
            {
                Console.WriteLine("조건이 false 이므로 실행되지 않습니다.");
            }
            else if (_boolTrue)
            {
                Console.WriteLine("조건이 true 이므로 실행 됩니다.");
            }
            else
            {
                Console.WriteLine("위 조건이 충족되어 실행되지 않습니다.");
            }
        }
    }
}

 

 

결과

조건이 true 이므로 실행 됩니다.

 

 

간혹 if 문 여러 개를 나열한 것과 else if문은 차이가 있으므로 주의하시길 바랍니다.

 

예시)

namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            bool _bool = true;
            if (_bool) 
            {
                Console.WriteLine("조건이 true 이므로 실행됩니다.");
            }
            else if (_bool)
            {
                Console.WriteLine("조건이 true여도 위 조건이 충족되었기 때문에 실행되지 않습니다.");
            }
            else if (_bool)
            {
                Console.WriteLine("조건이 true여도 위 조건이 충족되었기 때문에 실행되지 않습니다.");
            }
            else
            {
                Console.WriteLine("위 조건이 충족되어 실행되지 않습니다.");
            }

            if(_bool)
            {
                Console.WriteLine("조건이 true 이므로 실행됩니다.");
            }

            if (_bool)
            {
                Console.WriteLine("위 if문과 관계 없으므로 조건이 true 이므로 실행됩니다.");
            }
        }
    }
}

 

결과

조건이 true 이므로 실행됩니다.
조건이 true 이므로 실행됩니다.
위 if문과 관계 없으므로 조건이 true 이므로 실행됩니다.

 

위와 같이 else if문은 여러 개가 사용 가능하며 else if문은 위 조건 중 하나라도 충족되면 아래의 코드는 조건이 충족되어도 실행되지 않습니다.

'프로그래밍 언어 > C#' 카테고리의 다른 글

C# 기초 - 반복문(for 문)  (0) 2024.05.19
C# 기초 - 조건문(switch 문)  (0) 2024.05.18
C# 기초 - 연산자(비교, 논리)  (0) 2024.05.17
C# 기초 - 증감연산자  (0) 2024.05.16
C# 기초 - 할당(대입) 연산자  (0) 2024.05.16

관련글 더보기