c語言遞迴求逆序,求大神解釋。求解釋下這樣遞迴的思想,不明白為何

2021-03-24 11:50:46 字數 2261 閱讀 4665

1樓:匿名使用者

由於題目中限定了遞迴

又禁止使用了那麼多的輸入輸出函式

那麼能用的 只有getchar 和putchar了要逆序輸入

比如有3個字元。

那麼輸入輸出的順序就應該是

getchar

getchar

getchar

putchar

putchar

putchar

也就是 最後一個get到的,要最先輸出。

這樣遞迴函式就寫成

先getchar

遞迴呼叫函式

再putchar

這樣形式了。

運用遞迴反序輸出字元陣列裡面的函式 求大神解釋

2樓:匿名使用者

void func(char *s,int n)

c語言裡的遞迴看不懂,請求大神講解,~不知道遞迴是怎麼回事,求解答

3樓:匿名使用者

遞迴就是定義一個函式,函式內部呼叫自己本身。比如f(n+2)=f(n+1)+f(n)就是遞迴函式

int f(int m)}

4樓:網路工程師小青

就是一直查詢下去!比如你當前路徑在c盤根目錄!你在c盤搜尋一個檔案,會先從根目錄查詢,找不到再從子目錄查詢,一直查到最後一級

這段**是怎麼做到逆序輸出的啊,我知道是巢狀,但還是想不明白,求大神詳細解釋一下唄~

5樓:聽不清啊

這是通過遞迴來實現逆序輸出若干個數字的。以-1作為結束的標記(-1本身不輸出)

int reverse()

請教這個c語言程式,最後的遞迴法我沒看懂,求大神幫忙解釋下,謝謝!

6樓:匿名使用者

n = 1或2明白吧

f=count(n-1)+count(n-2):第n階時,因為一次只能上1或2階所以只可能從n-1或n-2階上來,上來的方法也就是這兩種方法的和了啊啊啊

7樓:ben笨_小劍

這是一種類似斐波那契數列的思想。

我有n個臺階,就是f(n)個走法

那我先走n-1個臺階,再走一步,就是f(n-1);

那我先走n-2個臺階,再走2步,就是f(n-2);

8樓:西瓜蘋果胡桃

這咋解釋呢。。。。首先得從數學或邏輯角度理解,然後轉換成**。

數學或邏輯角度上來看,n層的樓梯的爬法=n-1層的樓梯的爬法+n-2層的樓梯的爬法,這個能理解嗎?

c語言:怎麼樣才能學好遞迴的思想?求高手指教~

9樓:匿名使用者

舉個簡單的例子,你要賺1000塊錢,而你每天只能賺100塊。

此時這個遞迴函式就是賺錢,遞迴的目的是賺到1000塊。在賺足1000塊之前,你得不停的工作,而賺錢這個函式就得不停的呼叫,直到賺足1000塊錢為止。

因此,遞迴只需要知道遞迴何時終止 ,每次遞迴所完成的任務,每次完成任務得到的值與任務目標對比,滿足就結束遞迴,返回你要返回的值。不滿足繼續呼叫這個函式。

10樓:

遞迴就是地推的類比;

第一遞迴必須有一個不用遞迴可以退出的條件。

第二遞迴必須能構達到退出的條件(遞迴必須終止)。

第三消除尾遞迴,保持高效。

很多數學公式不要用遞迴實現,用迭代吧!

11樓:匿名使用者

多學學棧的思想 後進先出

求大神為我好好解釋一下演算法設計中的遞迴思想的原理。

12樓:xi風獨自涼

我也才開始學matlab

一個函式呼叫它自身稱為函式

的遞迴呼叫。

舉個例子:求n!

function f=factor(n)

if n<=1

f=1;

else

f=factor(n-1)*n

end這個程式就呼叫了factor函式它本身

13樓:匿名使用者

我只是小草

遞迴演算法是指是函式內部呼叫自己本身如

int fun(x,y)

這也行成了迴圈依次根據語句,算出理想的值

跳出迴圈的方法是在最外層迴圈的末位部分插入判斷語句if();break;

C語言問題,求大神指教,求解釋本程式,最好詳細點,謝謝啦,我

main 程式入口 printf 各位數之和s d n s printf 其反序數 d n a 整個程式就是為了得到輸入的數的逆序排列數以及所有數字之和 include main printf 各位數之和s d n s printf 其反序數 d n a 如 輸入 123 輸出各位數之和s 1 2 ...

c語言求大神,求C語言大神

在main中,定義了陣列a 下標 0 1 2 3 4 5 6 7 8 值 8 2 9 1 3 6 4 7 5 求f a,9 f a,9 max f a,n 1 a n 1 max f a,8 5 由於不知道哪個大,所以需要求f a,8 f a,8 max f a,7 7 f a,7 max f a,...

C語言問題,求解答,C語言問題,求大神解答

f函式中的a每次使用外面傳入的2,b是區域性變數,後每次都是1,c是靜態變數,函式每次執行會在上次值 1 所以最後執行三次,輸出為789 程式的輸出是 789 c語言問題,求解答 執行abc a 1 首先進行巨集代換過程,是把 a 1去替代 定義的巨集函式 x x 中的x,即得到式子 a 1 a 1...