본문 바로가기
Program Language/C#

Part1. C# 첫발 내딛기(32. 조건문)

by 토담이아빠 2023. 2. 3.

조건문

 

이번 포스팅에서는 C#에서 사용하는 조건문에 대해서 정리하겠습니다. 


if ~ else 문

 

if ~ else 문은 조건식에 따라 프로그램의 흐름을 결정하는 조건문입니다. 아래 예제처럼 if문 안의 식이 true인지 false인지에 따라 분기가 결정됩니다. 


if(식)
  실행문1  //식이 true일때 실행
else
  실행문2  //식이 false일때 실행

조건이 2개 이상이면 다음과 같이 else if문을 원하는 만큼 추가할 수 있습니다.


if(식1)
  실행문1
else if(식2)
  실행문2
else if(식3)
  실행문3
...
else
  실행문N

다음은 조건문을 사용하여 입력한 년도가 윤년인지, 평년인지를 두 가지 방법으로 판단하는 예제입니다. 하나는 직접 조건식을 입력하고, 다른 하나는 DateTime클래스의 IsLeapYear() 메서드를 이용했습니다.


using System;
using System.Data;

namespace if_exam
{
    internal class Program
    {     
        static void Main(string[] args)
        {
            Console.Write("년도를 입력하세요 : ");
            int year = int.Parse(Console.ReadLine());

            if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
                Console.WriteLine($"{year}년은 윤년");
            else
                Console.WriteLine($"{year}년은 평년");

            if (DateTime.IsLeapYear(year))
                Console.WriteLine($"{year}년은 윤년");
            else
                Console.WriteLine($"{year}년은 평년");
        }
    }
}

결과

년도를 입력하세요 : 2020
2020년은 윤년
2020년은 윤년

switch 문

 

switch 문도 if 문과 마찬가지로 조건에 따라 분기하는 분기문입니다. 차이점은 if문은 식의 값이 bool값인 반면 switch문은 정수라는 점입니다. 다음은 switch문을 이용하여 점수 등급을 결정하는 예제입니다.


using System;
using System.Data;

namespace Grading_exam
{
    internal class Program
    {     
        static void Main(string[] args)
        {
            Console.Write("점수를 입력하세요 : ");
            int score = int.Parse(Console.ReadLine());
            score /= 10;
            string grade = null;

            switch (score)
            {
                case 10:
                    grade = "A";
                    break;
                case 9:
                    grade = "A";
                    break;
                case 8:
                    grade = "B";
                    break;
                case 7:
                    grade = "C";
                    break;
                case 6:
                    grade = "D";
                    break;
                case 5:
                    grade = "F";
                    break;
            
            }
            Console.WriteLine($"학점은 {grade}입니다.");
   
        }
    }
}

결과

점수를 입력하세요 : 76
학점은 C입니다.

[Review]
"초보자를 위한 C# 200제(2판)" / 저자 : 강병익

 

 

댓글