#include #include int fact( int num ); main() { int num; printf( "\nPlease enter a number: " ); scanf( "%d", &num ); if ( num < 0 ) /* legal input? */ printf( "\nERROR -- number must be >= 0.\n" ); else printf( "\nFactorial of %d is %d.\n", num, fact( num ) ); return EXIT_SUCCESS; } int fact( int num ) { if ( num <= 1 ) /* base cases */ return 1; else /* recursive call */ return num * fact( num - 1 ); }