遞迴主要思考方式在於:把大事化小。
遞迴的兩個必要條件以及注意
(1)存在限制條件,當滿足這個限制條件的時候,遞迴便不再繼續。
(2)每次遞迴呼叫之後越來越接近這個限制條件。
注意
(3)遞迴必須要有結束條件,否則程式將崩潰。
(4)遞迴函式,當條件終止後就會逐層返回 例題
接收乙個整型值(無符號),按照順序列印它的每一位,例如輸入123,列印1 2 3
//純淨**——不帶注釋
#include//函式定義
//void說明函式無返回值
void print(int n)
printf("%d ", n % 10);
}int main(void)
**解析:
首先將輸出的123傳到n這裡
程式執行到if這裡,
進行判斷,123>9條件成立,進行下一步,進入if
接著將123/10 = 12餘的3丟掉
函式接著呼叫自己
12>9條件成立,繼續進行下一步,進入if
再將12/10 = 1 餘的2丟掉
函式再次呼叫自己
此時1>9條件不成立,進行到printf處,1%10 = 0餘1,將1輸出
到現在,遞迴函式的條件已經終止(不成立),開始進行逐層返回
梳理一下層數
1層 輸入 123,
2層 輸入 12
3層 輸入 1條件不成立將1輸出
由2層開始逐層向上返回
2層 12%10 = 1餘數 2,將2輸出
1層 123%10 = 12餘數3,將3輸出
最後得出結果1 2 3
以下為**
初識C語言
一 計算機工作原理 處理單元 cpu 計算 處理程式 隨機訪問儲存器 ram 臨時儲存檔案和程式 硬碟 永久儲存器 等等。二 c語言程式設計七步 1 定義程式設計目標 2 設計程式 3 寫程式源 4 執行程式 5 編譯 6 除錯和測試 7 維護和修改。三 編譯器的任務 將源 編譯形成機器語言 四 鏈...
初識C語言
佔位符 d f c lf s ld 位操作符 轉義符 n r f ddd xhh 操作符 指令系統的每一條指令都有乙個操作符,它表示該指令應進行什麼性質的操作。字元的輸入輸出 getchar putchar 資料的格式化輸入輸出 scanf printf 的作用 表示該符號之前的內容已經結束。簡單的...
初識 C 語言
1.c 語言的起源 1972年,貝爾實驗室的丹尼斯 里奇 dennis ritch 和肯 湯普遜 ken thompson 在開發 unix 作業系統時設計了 c 語言。c 語言不完全是里奇的突發奇想而來,他是在 b 語言 湯普遜發明 的基礎上進行設計。至於 b 語言的起源,那是另乙個故事。c 語言...