/* * compute factorial using recursion */ #include /* compute n! */ long fac(long n) { if (n <= 0) { return 1; } else { return n*fac(n-1); } } /* main program */ int main(void) { /* use "long" here to allow for a bigger range */ long n; printf("enter n to compute factorial of\n"); if (scanf("%ld", &n) == 1) { printf("%ld! is %ld\n", n, fac(n)); } else { printf("not number\n"); return 1; } return 0; }