1. 程式人生 > >利用遞迴實現動態指定迴圈層數

利用遞迴實現動態指定迴圈層數

  x從一個大於0的數開始遞減,在減到-1前,每呼叫一次cycle(int)都會有一個迴圈,並且在這個迴圈的迴圈體用遞迴呼叫了cycle(int)自己,我們都知道函式的執行結束標誌是return},當然有時候會因throw而中止,那麼在這次遞迴呼叫未結束用,這個迴圈被掛起了,這就相當於前面的那個直接迴圈巢狀的那段程式碼中一樣:當內迴圈(第二層、第三層)沒有執行完時,第一個迴圈的控制變數被掛在了i=0上。那麼在這個迴圈體內遞迴呼叫自己後會怎樣呢?很顯然,還有可能會有第二次遞迴呼叫(這就由x決定了,而x則是使用者傳進來的),什麼時候終止呢?關鍵就在x--上了,適當的調整x這個控制變數就可以控制好遞迴次數,從而控制迴圈層數。