简述
一个select case 语句允许根据值列表测试变量是否相等。每个值都称为一个案例,并检查每个选择的变量select case.
句法
的语法select case构造如下 -
[name:] select case (expression)
case (selector1)
! some statements
... case (selector2)
! other statements
...
case default
! more statements
...
end select [name]
以下规则适用于select声明 -
-
select 语句中使用的逻辑表达式可以是逻辑、字符或整数(但不是实数)表达式。
-
您可以在一个选择中包含任意数量的 case 语句。每个 case 后跟要比较的值,可以是逻辑、字符或整数(但不是实数)表达式,并确定执行哪些语句。
-
case 的常量表达式必须与 select 中的变量具有相同的数据类型,并且必须是常量或文字。
-
When the variable being selected on, is equal to a case, the statements following that case will execute until the next case statement is reached.
-
如果 select case (expression) 中的表达式不匹配任何选择器,则执行 case default 块。
示例 1
program selectCaseProg
implicit none
! local variable declaration
character :: grade = 'B'
select case (grade)
case ('A')
print*, "Excellent!"
case ('B')
case ('C')
print*, "Well done"
case ('D')
print*, "You passed"
case ('F')
print*, "Better try again"
case default
print*, "Invalid grade"
end select
print*, "Your grade is ", grade
end program selectCaseProg
编译并执行上述代码时,会产生以下结果 -