strong number in c

#include <stdio.h>
#include <math.h>

int factorial(int num);
int isStrongNumber(int num);

int main() {
    int num;

    printf("Enter a number: ");
    scanf("%d", &num);

    if (isStrongNumber(num)) {
        printf("%d is a strong number.\n", num);
    } else {
        printf("%d is not a strong number.\n", num);
    }

    return 0;
}

int factorial(int num) {
    int fact = 1;

    for (int i = 1; i <= num; i++) {
        fact *= i;
    }

    return fact;
}

int isStrongNumber(int num) {
    int originalNum, remainder, result = 0;

    originalNum = num;

    while (originalNum > 0) {
        remainder = originalNum % 10;
        result += factorial(remainder);
        originalNum /= 10;
    }

    return (result == num);
}