Fortran语言基础 - 图文 联系客服

发布时间 : 星期四 文章Fortran语言基础 - 图文更新完毕开始阅读f58fff49fe4733687e21aa93

山东建筑大学

real :: a real :: b = 3.0

a=SQRT(b)**2-b ! 理论上a应该要等于0 if ( a==0.0 ) then write(*,*) \等于0\ else

write(*,*) \不等于0\ end if stop end

浮点数在作逻辑判断时,应当预留一定的误差空间。

3.2.2 字符的逻辑判断

除了数字可以比较大小外,字符也可以比较大小。字符比较大小的根据是比较他们的ASCII码。

3.3 SELECT CASE语句

多重判断可以采用SELCET CASE语句。其逻辑流程为: select case (变量) case (数值1) 程序代码 case (数值2) 程序代码 case (数值n) 程序代码 case default 程序代码 end select

例 判断成绩等级

program ex0512

25

数值分析程序设计——Fortran基础

implicit none integer score character grade write(*,*) \ read(*,*) score select case(score)

case(90:100) ! 90到100分之间 grade='A'

case(80:89) ! 80到89分之间 grade='B'

case(70:79) ! 70到79分之间 grade='C'

case(60:69) ! 60到69分之间 grade='D'

case(0:59) ! 0到59分之间 grade='E'

case default ! 其它情形 grade='?' end select

write(*,\ stop end

注意:使用SELECT CASE有以下限制:

(1) 只能使用整数、字符和逻辑变量,不能使用浮点数及复数; (2) 每个CASE中所使用的数值必须是固定值,不能使用变量;

3.4 其他流程控制

3.4.1 GOTO命令

GOTO命令功能强大,可以任意跳转程序的执行顺序。正因为这样,一般不建议使用,以免造成程序逻辑混乱。

26

山东建筑大学

3.4.2 PAUSE、CONTINUE、STOP命令

PAUSE 程序执行到PAUSE时,会暂停执行,直到用户按下ENTER键,才会恢复执行;

CONTINUE 没有实际功能,只是为方便程序阅读; STOP 结束程序;

27

数值分析程序设计——Fortran基础

4 循环语句

4.1 DO循环

语法:

do counter=a, b , c 程序代码 end do 注释:

do循环标志 counter计数器 a计数初值 b计数终值

c计数增量,默认为1,可以省略 end do结束循环 例 利用循环计算2+4+6+8+10

program ex0602 implicit none

integer, parameter :: limit=10 ! 计数器的上限 integer counter ! 计数器 integer :: ans = 0 ! 拿来累加使用 do counter=2, limit ,2 ans = ans + counter end do write(*,*) ans stop end

注释:DO循环可以多层嵌套 do i=1,10 do j=1,10

28