楼主这个帖子主题不错。我也来一个技巧。
善用常量数组来替代一些 if else。
比如,经典的考试题目,星期一看电影,星期二看书,星期三聚会,星期四野营,星期五星期六旅行,星期日休息。
输入星期几,输出要做的事情。
普通代码:
[Fortran] 纯文本查看 复制代码 program fcode_cn
integer :: wk
read(*,*) wk
select case(wk)
case (1)
write(*,*) "看电影"
case (2)
write(*,*) "看书"
case (3)
write(*,*) "聚会"
case (4)
write(*,*) "野营"
case (5,6)
write(*,*) "旅行"
case (7)
write(*,*) "休息"
end select
end program fcode_cn
利用常量数组代码:
[Fortran] 纯文本查看 复制代码 program fcode_cn
character(len=6) , parameter :: ACT(*) = &
[character(len=6)::"看电影","看书","聚会","野营","旅行","旅行","休息"]
integer :: wk
read(*,*) wk
write(*,*) ACT(wk)
end program fcode_cn
可以看到,合理的使用常量数组,不但代码简练,并且易于维护,以后增加和修改都更简单。
同时,也便与遍历整个星期。
[Fortran] 纯文本查看 复制代码 do i = 1 , size(ACT)
write(*,*) ACT(i)
end do |