遞迴和非遞迴分別實現strlen

2021-09-22 22:31:31 字數 649 閱讀 1019

遞迴和非遞迴分別實現strlen ,來計算字串長度。

方法一:遞迴

1、鍵入要求的字串;

2、判斷字串是否為空,為空返回0;不為空返回strlen(a+1)+1;a+1表示字串後移一位;+1表示字串長度+1;

3、列印結果

方法二:

1、鍵入要求的字串;

2、判空,空則返回0;不為空則迴圈,count自增;

3、列印結果

方法一:遞迴

#include #include #pragma warning (disable :4996)

int strlen1(char a)//遞迴

return strlen1(a + 1) + 1;

}int main()

方法二:非遞迴

#include #include #pragma warning (disable :4996)

int strlen2(char a)//非遞迴

day07 5 遞迴和非遞迴分別實現strlen

非遞迴官方函式版本 define crt secure no warnings 1 include intmain printf 請輸入一串字串,本程式會將求出字串的長度 gets str strsize strlen str printf d strsize return0 非遞迴自製函式版本 d...

遞迴和非遞迴

1 遞迴就是函式呼叫函式本身,執行起來就是函式巢狀函式,層層巢狀,所以函式呼叫 引數堆疊都是不小的開銷,但是程式簡單。2 非遞迴就是不斷地對引數入棧 出棧,省去了函式層層展開 層層呼叫的開銷。雖然引數出入棧次數多了,但是一般都開闢固定的足夠大的記憶體來一次性開闢 重複使用。3 非遞迴是從堆疊的角度來...

折半查詢遞迴和非遞迴實現

折半查詢,在此做一總結,遞迴和非遞迴實現如下所示 1 data增序排列3 非遞迴折半查詢 4int binarysearch int data,int keyvalue,int len 15return 1 16 1718 遞迴折半查詢 19int binarysearchrecursion int...