#include <stdio.h>
long factorial(long n) {
return (n == 1 || n == 0) ? 1 : n * factorial(n - 1);
}
int sumFactorialDigits(long num) {
int sum = 0;
while (num != 0) {
sum += factorial(num % 10);
num /= 10;
}
return sum;
}
int main(void) {
long number = 345;
printf("sum factorial digits = %d", sumFactorialDigits(number));
return 0;
}
/*
run:
sum factorial digits = 150
*/