什么叫c语言函数递归,什么是递归-C语言函数递归-嗨客网
C語言函數遞歸教程
函數遞歸就是一個
C語言函數遞歸條件
執行一個函數時,就創建一個新的受保護的獨立空間(新函數棧)。
函數的局部
遞歸必須向退出遞歸的條件逼近,否則就是無限遞歸了。
當一個函數執行完畢,或者遇到
C語言函數遞歸詳解
語法
type funcName(param){
if (param == cond)
{
return;
}
funcName(param2);
}
說明
我們定義了一個函數 funcName,該函數傳遞一個
這里的 if 條件就是函數遞歸的出口,這個非常重要,如果沒有這個遞歸的出口,那么這個遞歸就會一直執行下去。
案例
C語言函數遞歸
#include
void printNum(int num){
if (num > 2)
{
num--;
printNum(num);
}
printf("Num = %d\n", num);
}
int main(){
printf("嗨客網(www.haicoder.net)\n\n");
printNum(4);
return 0;
}
程序運行后,控制臺輸出如下:
我們定義了一個 printNum 函數,該函數的參數是
如果當前參數的值不大于 2 的話,那么就打印當前參數的值。這里的 if 條件里面的邏輯就是函數 printNum 自己調用自己,這就構成了遞歸調用。同時不滿足 if 條件的情況,就是遞歸調用的出口。
C語言函數遞歸
C 語言函數遞歸,實現求階乘
#include
int factorial(int num){
int result = 0;
if (num > 0)
{
result = num * factorial(num-1);
return result;
}
return 1;
}
int main(){
printf("嗨客網(www.haicoder.net)\n\n");
int factorialResult = factorial(5);
printf("factorialResult = %d\n", factorialResult);
return 0;
}
程序運行后,控制臺輸出如下:
我們定義了一個 factorial 函數,該函數的參數是一個數字,在函數體里面我們使用 if 判斷,如果當前參數的值大于 0 的話,我們就再次調用自己,并且參數的值是當前值減一,最后返回計算的結果。
如果當前參數的值不大于 0 的話,那么就直接返回 1。這里的 if 條件里面的邏輯就是函數 factorial 自己調用自己,這就構成了遞歸調用。同時不滿足 if 條件的情況,就是遞歸調用的出口。
C語言函數遞歸
C 語言函數遞歸,實現斐波那契數列
#include
int fibonacci(int num){
int result = 0;
if (num <= 1)
{
result = 1;
}
else
{
result = fibonacci(num-1) + fibonacci(num-2);
}
return result;
}
int main(){
printf("嗨客網(www.haicoder.net)\n\n");
int fibonacciResult = fibonacci(5);
printf("fibonacciResult = %d\n", fibonacciResult);
return 0;
}
程序運行后,控制臺輸出如下:
我們定義了一個 fibonacci 函數,該函數的參數是 int,
C語言函數遞歸總結
函數遞歸就是一個函數在函數體內又調用了自身,我們稱為函數的遞歸調用。函數遞歸最重要的就是一定要找到遞歸調用的出口。
總結
以上是生活随笔為你收集整理的什么叫c语言函数递归,什么是递归-C语言函数递归-嗨客网的全部內容,希望文章能夠幫你解決所遇到的問題。