6.1 子例程(SUBROUTINE) 一般格式: SUBROUTINEsubroutine_name(argument_list)...(Declarationsection)...(Excutionsection)...RETURNEND SUBROUTINE[subroutine_name] 每个子例程是个独立的程序单元,它开始于SUBROUTINE 语句,结束于END SUBROUTINE语句。它的编译也独立于主程序和其他的过程。因为程序中的每个程序单元都是...
1. 定义Subroutine 在Fortran中,定义Subroutine的方式很类似于定义Function,但两者有些细节上的差别。定义Subroutine需要使用Subroutine关键字,比如下面的代码: ``` SUBROUTINE mySubroutine(arg1, arg2, arg3) implicit none INTEGER :: arg1, arg2, arg3 !Subroutine code here END SUBROUTINE mySubroutine ``` 这...
fortran subroutine的用法fortran subroutine的用法 Fortran子程序(Subroutine)是指Fortran编程语言中一个常用的独立执行程序。Fortran子程序是一种对主程序可以被多次引用的可重用的模块,可被通过特定的函数声明来完成较复杂的任务。与函数不同,它不会返回任何值也不会接收任何参数,因此运行的结果只能写入和/或输出给主...
moduleglobalimplicit noneinteger,save::a,bend moduleglobalprogrammainuseglobal! use语句还需要在implicit none之前implicit nonea=1b=2callsub()end programmainsubroutinesub()useglobalimplicit nonewrite(*,*)a,breturnend subroutinesub 这里名为global的模块module需要在源文件的开头部分,在use global之前。 主...
Fortran中subroutine和function的区别 Fortran中subroutine和function的区别 转载:http://blog.sina.com.cn/s/blog_ed2cfd230102v2gn.html 二者均是被program调用,完成一定的任务,但是二者有明显的不同: 1. subroutine不需要在program中声明,但是在调用时必须用Call命令;与此相反,function必须在program中声明,在调用时...
在编程语言Fortran中,“过程”是一个关键的概念,它涵盖了函数(function)和子例程(subroutine)两种形式。
方法/步骤 1 关于codeblocks IDE的极速安装请参考百度经验<<Windows下极速搭建fortran开发环境>> 2 子程序的一般形式:subroutine xxxx(参数1,参数2...) implicit none 参数1类型 参数2类型 xxxxxx代码endsubroutine xxxx 3 编写子程序传入2个参数其中一个是字符串另一个是整数循环整数次,打印字符串...
subroutine sub(array) 但是动态储存数组,如real(kind=8),dimension(:),allocatable :: array,不能直接作为子程序的形参传递,一种方法是把子程序放入module module var implicit none contains subroutine test(array,i) implicit none integer i real(kind = 8),dimension(:) :: array !在此只需要声明数组类型...
Reala(m,n)a=2End Subroutine fun2!方法3Subroutinefun3(a)Reala(:,:)a=3End Subroutine fun3 执行结果: 三种方法的形参数组,第一种称假定大小数组(assumed-size arrays),第二种称自动数组(auto arrays),第三种称假定形状数组(assumed-shape arrays)。 第一种:可对数组元素或数组片段进行操作(如 a(3)=...
子程序Subroutine 子程序之所以叫子程序,是因为在没有经过调用之前,它不会被执行。(当然,如果把编译器对主函数的调用也看做同样的话则另当别论。) 包含子程序的程序的格式: program main...call sub_1(...)...call sub_2(...)...endprogram main subroutine sub_1(...)...