以前一開始接觸遞迴,真的很難理解那到底是怎麼執行的。但是昨天化了一晚上理解完了一段python語言中的一段遞迴後,頓時豁然開朗了。完全搞明白後,自己又寫了cpp中的pow函式和iterate函式,分別用於求某數的次方和累加和。
遞迴函式前面的一部分要寫明什麼時候跳出這個迴圈。比如求a的b次方的函式,就要寫明當b等於1的時候,跳出迴圈,返還a。(可惜一開始寫的時候又一次寫成了b=1)。
if(b==1)
return
a;
接下來是如果不符合條件,就再一次進入迴圈:c=a*pow(a,b-1);
當然重新呼叫遞迴函式時引數要修改一下,使其更接近跳出迴圈的那個值。
horatio@horatio-optiplex-3010
:~/c
$ vim recursion.cpp
horatio@horatio-optiplex-3010
:~/c
$ g++ recursion.cpp -o recursion
horatio@horatio-optiplex-3010
:~/c
$ ./recursion
首先在c資料夾中建立文字,輸入下面的**,然後編譯,最後執行。
#include
using
namespace
std;
intpow(int a,int b)
int iterate(int a)
int main()
遞迴函式的基本概念
遞迴函式說白了就是乙個自己呼叫自己的函式 比方說def print num num if num 10 這是跳出的條件 return 這是跳出的位置 else print num num 1 print num num 再次呼叫自己 print num 1 這就算是乙個簡單的遞迴函式,依次列印1 1...
遞迴基本解法 抽象函式的意義研究
下面是我根據之前公司 抽象的乙個需求 已知 剩餘人數 總人數 總人數 中毒概率 總人數 中毒概率 死亡概率 單位時長為1ms,記為f x 隨著時間的變化,剩餘的人數將作為引數x傳入f x 求50ms時f x 的值?在時間變化n上 f x 的值?解 不妨設其中總人數為x 則剩餘人數 f x x x c...
C語言 函式的基本使用和遞迴
三 函式的呼叫 四 函式的宣告和定義 五 函式遞迴 1 庫函式 為了支援可移植性和提高程式的效率,c語言的基礎庫中提供了一系列庫函式,滿足一些基礎功能,他們不是業務性的 在開發的過程中每個程式設計師都可能用的到,方便程式設計師進行軟體開發。c語言常用庫函式 使用庫函式,必須包含 include對應的...