W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
一般來說在復(fù)雜的行列式計(jì)算中經(jīng)常會(huì)遇到多重循環(huán),這與以上 goto 和 exit 語句的場景稍顯不同。goto 語句的跳轉(zhuǎn)行因?yàn)榭梢灾付ㄈ魏我恍?,所以不?huì)被多重循環(huán)影響,可以直接跳轉(zhuǎn)到多重循環(huán)之外或者某一重循環(huán)之中的某一行,如示例 17 所示。而 exit 語句如果還是按照上面的用法每次只能退出一重循環(huán),碰到需要同時(shí)退出多重循環(huán)時(shí)就比較麻煩。所以 Fortran 語言為了盡量避免這一問題,就給 exit 語句添加一種類似于 goto 語句指示跳轉(zhuǎn)行的方法 exit out,如示例 18 所示。
!!! 示例 17
sum = 0
do i = 1, 10
do j = 1, 10
sum = sum + i + j
if (sum > 10) go 10
enddo
enddo
10 print *, i, j, sum ! 輸出 i 的值為 1,j 的值為 4,sum 的值為 11
!!! 示例 18
sum = 0
out: do i = 1, 10
do j = 1, 10
sum = sum + i + j
if (sum > 10) exit out
enddo
enddo out
print *, i, j, sum ! 輸出 i 的值為 1,j 的值為 4,sum 的值為 11
這里需要注意的是,當(dāng)使用 ?
exit out
? 方法時(shí),out 是對應(yīng)于循環(huán)的一個(gè)別名,需要同時(shí)在 do 前和 enddo 后添加 out 的聲明。當(dāng)然,這里的別名也可以使用其他符合規(guī)則的字符串,只要不與同一個(gè)代碼文件中的其他別名或變量名等相同即可。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: