再帰関数とは、関数の中からその関数自身を呼び出すような処理を行う関数のこと
簡単に言えば自分で自分を呼び出すことです
#include <stdio.h> int fact(int n) { int m; if (n == 0) return 1; // 0! = 1 /* 以下、n が 0 でないとき */ m = fact(n - 1); \ return n * m; // n! = n * m } int main() { int i, ans; scanf("%d", &i); ans = fact(i); printf("%dの階乗は%d.\n", i, ans); return 0; }