1樓:
putchar是輸出一個字元,可是fun()在遞迴,一直遞迴到你輸入回車就輸出c,輸出到是從後往前。它會先呼叫等於回車前的字元輸出。比如你輸入abcd,那麼先用的是f(d),然後輸出d,以此往前推。
2樓:做而論道
void fun()
//---------------------遞迴,不是什麼好東西。
它的遞迴次數,程式設計時,難以掌握。
使用的時候,才會知道。
這樣,就有可能超出堆疊空間,造成系統崩潰。
3樓:
簡單的遞迴呼叫,遞迴就像棧一樣有著先入後出的特性。最先輸入的被放到了棧底,而最後輸入的被放到了棧頂,按照先入後出的原理,棧頂的先出棧(輸出),所以輸出為逆序。
4樓:匿名使用者
說不清楚的,只能說是沒有到回車換行的時候回遞迴呼叫fun函式,是先進入fun函式,所以最內層的fun函式緊接著輸出的一定是一層一層往下接受字元後最後面的那個。
建議你用編譯器的單步執行看一下呼叫過程。
5樓:陌路盡頭
這是用遞迴來實現的,後進棧先出。可以查查你看的c語言書,看不懂問我。其實我也是初學者。
C 除錯有問題,請大家幫我看看
改了下 include include using namespace std int main tp 1 rt calculate final total of parallel resistance cout n for i 0 i rin rt rt rin y y 1 r use this ...
C語言簡單問題,一個簡單c語言小問題?
程式沒有錯誤,不過輸入時注意要加逗號例如12,13,14規範點的話逐個輸入 scanf d a 這樣就不會出現錯誤了。一個簡單c語言小問題?a a b這個等價於a a a b 所以a a a b,故a b c語言基本問題 一 c語言規定總是從main 開始執行的 這個函式也叫 主函式 因此,你發來的...
c語言的簡單加密,C語言簡單加密問題
include include int main 那麼再讀入一個字元,賦給陣列裡的元素。也就是說,每兩個字元a i n 能讀入第二個字元。如果讀入奇數個字元,則無法結束程式。i 0 dowhile a i n 修改如下,執行ok include int main printf n include i...