codeblocks下fortran编程如何使用子程序subroutine

来源:网络时间:2015-12-17 13:01:43

  1、关于codeblocks IDE的极速安装

  参考教程:Windows下搭建fortran开发环境

  2、子程序的一般形式:subroutine xxxx(参数1,参数2.....)

  implicit none

  参数1类型

  参数2类型

  xxxxxx代码

  end subroutine xxxx

  3、编写子程序

  传入2个参数

  其中一个是字符串

  另一个是整数

  循环整数次,打印字符串

  程序结束时改变传入的整数值

  传入的参数有如下三种形式:

  intent(in):在子程序中不可改变值

  intent(out):可在子程序中改变

  intent(inout):可在子程序中改变

  =====================================

  !子程序

  subroutine dy2003310(strFileName, times)

  implicit none

  character(*),intent(in)::strFileName

  integer,intent(inout)::times

  integer::i

  do i=1,times

  print *, strFileName

  end do

  times=times+times

  end subroutine dy2003310

codeblocks下fortran编程使用子程序subroutine教程

  4、使用fortran的关键字contains

  contains是Fortran 90中新增的一个语法功能

  在module或者subroutine中

  可以用contains来包含其他的module或者subroutine

  编写主程序

  测试子程序是否能够改变传入的参数

  implicit none

  character(len=255)::str

  integer::n

  str="168"

  n=3

  print *, "*****************************************"

  print *, "子程序运行之前,n=",n

  call dy2003310(str,n)

  print *, "子程序运行之后,n=",n

  print *, "*****************************************"

codeblocks下fortran编程使用子程序subroutine教程

  5、在codeblocks中编译、链接:

codeblocks下fortran编程使用子程序subroutine教程

  6、运行、测试结果如下

  可以看到:

  子程序调用前参数2等于3

  调用后变成了6

codeblocks下fortran编程使用子程序subroutine教程
文章内容来源于网络,不代表本站立场,若侵犯到您的权益,可联系我们删除。(本站为非盈利性质网站) 联系邮箱:rjfawu@163.com