Помогите новичку с кодом на СИ

При вводе любого значения результат одинаковый. Несколько дней мучаюсь. Нужно вывести сумму ряда с нижней границей 0, максимальной границей n. Выражение 1/i!

# include <stdio.h>
# include <conio.h>
int main(){
    int n; 
    double res = 0;
    double tmp;
    printf("Enter the number N (N is an odd integer):");
    if (scanf("%i", &n) == 0){
        printf("Incorrect input value");
    }
    else if (n%2 == 0) {
        for (int j = 0; j<=n; j++){
            int f = 1;
            for (int i = 2; i <= j; ++i){
                f *= i;
            }
            tmp = 1 / f;
            res += tmp;
        }
        printf("%lf", res);
    }
    else{
        printf("Incorrect input value(N dont odd number)");
    }   
}

Ответы (0 шт):