24小时热门版块排行榜    

CyRhmU.jpeg
南方科技大学公共卫生及应急管理学院2025级博士研究生招生报考通知
查看: 427  |  回复: 2

astringent

铜虫 (著名写手)

[交流] 【求助】在fortran中可以这样写吗【已完结】已有2人参与

初学fortran,请问可以这样做吗:我在主程序中调用子程序test1,然后又在子程序test1中调用另一个子程序test2,我想传递a1。在子程序test2中,我先定义a1=0,然后有一个判断条件,如果成立,a1就为1,如果条件不成立,a1的值不变。当将a1的值返给子程序test1时,我还是利用a1是不是等于1来进行另一个条件的判断,这样做可以吗?另外我还想问大家,变量必须赋初值才能使用吗?比如说在我的主程序中调用子程序之前都没用到a1,当调用子程序后,才需要a1进行下面的计算,那是不是不用给a1付初值了?
program main
--------
call test1(a1,----)
----
end

subroutine test1(a1,----)
---
call test2(a1---)
--
end subroutine test1

subroutine test3(a1---)
--
end subroutine test3

[ Last edited by nono2009 on 2010-11-17 at 09:50 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ykwang

金虫 (正式写手)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
nono2009(金币+1):鼓励应助 2010-11-17 09:49:53
所说的调用关系没问题,也不需要事先给a1赋初值,只需要保证在第一次使用a1前给其赋值即可。
Nothing_Is_Impossible!
2楼2010-11-12 20:20:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

astringent

铜虫 (著名写手)

谢谢by ykwang的解答
3楼2010-11-13 03:15:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 astringent 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见