利用遞迴函式,將輸入的 5 個字元以相反順序列印。
#include <stdio.h>
void palin(int n) {
char current = getchar();
if (n != 1) palin(n - 1);
putchar(current);
}
int main(void) {
palin(5);
putchar('\n');
return 0;
}
輸入 abcde 時:
palin(5) 讀 'a' → 遞迴 palin(4)palin(4) 讀 'b' → 遞迴 palin(3)palin(1) 讀 'e' → 直接 putchar('e') 返回輸出:edcba
current 區域變數)。n == 1 避免多讀一個字元。