variável local não inicializada 'j' usada

Aqui está uma seção de algum código que eu tenho. Estou recebendo um erro não inicializado variável local 'j' usado e eu não vejo isso. Tanto quanto eu posso dizer que está sendo usado. Alguém pode ajudar por favor?

float Calculate(Element ElmAry[30], Formula FormAry[30])
{
    int i;
    int j;
    float MoleWT = 0;
    float MoleSum = 0;
    char e1;
    char e2;
    char f1;
    char f2;

    for(i = 0; i < 30; i++) {

        f1 = FormAry[j].Element1;
        f2 = FormAry[j].ElementA;
        e1 = ElmAry[i].eN1;
        e2 = ElmAry[i].eN1;

        if(e1 == f1 && e2 == f2) {
            MoleWT = ElmAry[i].Weight * FormAry[j].Atom;
            MoleSum = MoleSum + MoleWT;
            j++;
        }
    }

return MoleSum;
}

questionAnswers(3)

yourAnswerToTheQuestion