W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
如果主程序想要用數(shù)組變量或數(shù)組變量的某個位置的值為調(diào)用的子程序賦值,F(xiàn)ortran 也是完全支持的。如下所示,第一行是用數(shù)組變量初始化子程序參數(shù),第二行是用數(shù)組變量 a 中編號為 1 的元素初始化子程序參數(shù)。
call sub(a)
call sub(a(1))
上面第一行調(diào)用方式對應(yīng)的主程序和子程序可以類似于下面的示例 5。主程序和子程序中分別將 a 和 x 都定義為長度為 10 的一維數(shù)組,并在子程序中使用循環(huán)的方式依次為數(shù)組 x 的每個元素賦值。最后,賦好值的數(shù)組 x 也會返回給主程序。從執(zhí)行結(jié)果看到,輸出結(jié)果為期待的 a(3) 值。
!!! 示例 5
program stest5
implicit none
real a(10)
call sub(a)
print *, a(3)
end program stest5
subroutine sub(x)
implicit none
real x(10)
integer i
do i = 1, 10
x(i) = i
enddo
end subroutine sub
!!! 執(zhí)行結(jié)果
>>> 3.00000000
如果我們在調(diào)用時寫成了 ?call sub(a(1))
?,那會怎么樣呢?實際上還是會得到一樣的結(jié)果。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: