Pointers - Programming

Q1:

In the following program add a statement in the function fact() such that the factorial gets stored in j.
#include<stdio.h>
void fact(int*);

int main()
{
    int i=5;
    fact(&i);
    printf("%d\n", i);
    return 0;
}
void fact(int *j)
{
    static int s=1;
    if(*j!=0)
    {
        s = s**j;
        *j = *j-1;
        fact(j);
        /* Add a statement here */
    }
}

A j=s;

B *j=s;

C *j=&s;

D &j=s;

ANS:B - *j=s;

No answer description is available. Let's discuss.