課程
/后端開發
/C
/C語言入門
遞歸函數中,位于遞歸調用前的語句和各級被調用函數具有相同的執行順序; 遞歸函數中,位于遞歸調用后的語句的執行順序和各個被調用函數的順序相反; 這段話什么意思?
2016-05-18
源自:C語言入門 5-8
正在回答
我是這樣想的:
這句話的時間節點為:遞歸調用
調用前,就是順序運行,你肯定明白。
調用后,語句需要后一項的輸出才能執行,所以是倒敘。
小魚先生2333 提問者
function num(n,m){
??? console.log(n);
??? if(n<m){
??????? num(n+1,m);
??????? console.log(n);
??? }
}
num(2,5)? //2345432
?
// 1.首先執行num(2,5),就是
// console.log(2); ->? num(3,5);? ->? console.log(2);
????
//執行num(3,5);? 就是是相當于?? console.log(3); -> num(4,5); -> console.log(3);
//下面以此類推
// console.log(2); -> console.log(3); -> num(4,5); -> console.log(3); ->? console.log(2);?
// 然后就是
// console.log(2); -> console.log(3); -> console.log(4); -> num(5,5); -> console.log(4); -> console.log(3); ->? console.log(2);
// 最后就是
// console.log(2); -> console.log(3); -> console.log(4); -> console.log(5); -> console.log(4); -> console.log(3); ->? console.log(2);
舉報
C語言入門視頻教程,帶你進入編程世界的必修課-C語言
1 回答遞歸函數語句順序
2 回答printf語句和遞歸函數遞推和回遞時的執行順序
1 回答遞歸函數的執行順序?
1 回答遞歸函數中,位于遞歸調用前的語句和各級被調用函數具有相同的執行順序; 遞歸函數中,位于遞歸調用后的語句的執行順序和各個被調用函數的順序相反
2 回答遞歸函數中,位于遞歸調用后的語句的執行順序和各個被調用函數的順序相反;
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-05-18
我是這樣想的:
這句話的時間節點為:遞歸調用
調用前,就是順序運行,你肯定明白。
調用后,語句需要后一項的輸出才能執行,所以是倒敘。
2017-07-20
function num(n,m){
??? console.log(n);
??? if(n<m){
??????? num(n+1,m);
??????? console.log(n);
??? }
}
num(2,5)? //2345432
?
// 1.首先執行num(2,5),就是
// console.log(2); ->? num(3,5);? ->? console.log(2);
????
//執行num(3,5);? 就是是相當于?? console.log(3); -> num(4,5); -> console.log(3);
?
//下面以此類推
// console.log(2); -> console.log(3); -> num(4,5); -> console.log(3); ->? console.log(2);?
?
// 然后就是
// console.log(2); -> console.log(3); -> console.log(4); -> num(5,5); -> console.log(4); -> console.log(3); ->? console.log(2);
?
// 最后就是
// console.log(2); -> console.log(3); -> console.log(4); -> console.log(5); -> console.log(4); -> console.log(3); ->? console.log(2);