C でも再帰関数が書ける。特別なことも必要なく、単に自分自身を呼びだせばいい。
次のプログラムは練習問題から。階乗を計算する。
#include int fact(int n); int main(void) { int n; n = fact(5); printf("%d\n", n); return 0; } int fact(int n) { if (n) { return n * fact(n - 1); } else { return 1; } }
takatoh@nightschool $ ./sample_7_2 120