CASE 구문
IF-ELSE IF 구문과 같이 광범위하게 사용하지는 않지만, 몇몇 선택구조를 구현하는데 유용한 CASE 구문
SELECT CASE (선택자 index)
CASE (expression 1)
statement 1
CASE (expression 2)
statement 2
:
CASE(expression n)
statement n
END SELECT
선택자 index는 정수, 문자, 논리식이 될 수 있다. expression은 선택자가 가질 수 있는 값의 목록 또는 DEFAULT 이다.
CASE 구문이 실행될 때, 선택자가 expression 1 값에 해당된다면, 문블럭1이 실행되고 END SELECT 문 다음에 나오는 문으로 이동한다.
선택자가 expression 1값에 해당되지 않을 경우,
DEFAULT 문이 있으면 DEFAULT 와 연관된 문블럭이 실행되고,
DEFAULT 문이 없으면 SELECT CASE 구문 다음의 문으로 이동한다.
기명 CASE 구문
CASE 구문에도 이름을 붙일 수 있다.
형식
구문명: SELECT CASE (index)
:
END SELECT 구문명
예문
Heros : select case (HeroCode)
case(1)
print *, "Superman"
case (2)
print *, "Spyderman"
case (3)
print *, "Ironman"
case (4)
print *, "Batman"
default
print *, "Wonder Woman"
end select Heros
연습문제
1. 점수 (score)가 90점 이상이면 ’excellent’ 를, 80점 이상이면, ’good’을, 70점 이상이면 ’fair’를 70점 미만이면 “bad”를 출력하는 프로그램을 작성하시오. 이를 case문을 이용해서 작성하시오