Ho sistemato il codice, ho fatto i cicli di stampa sugli array,ma mi stampa ogni volta valori che non ho richiesto...come file di testo gli ho messo "1566AGGHlppq"

codice:
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
int i;
int k;
int g;

//Array di interi che conterrà le frequenze dei singoli caratteri nell'ordine 1..0  A..Z a..z
int occorrenzaCarattere[62];
//Array di interi che conterrà le frequenze del carattere successivo a quello appena letto
int occorrenzaSuccessivo[62];
//Array di interi che conterrà le frequenze delle sequenze per ciascun carattere
int occorrenzaSequenze[62];
//Variabile ausiliaria nella quale memorizzo il carattere appena letto
char carattereCorrente;
//Variabile ausiliaria nella quale memorizzo il carattere precedente a quello letto
char caratterePrecedente;
//Per il punto 3, è a 1 se stavo già contando quella che stà leggendo come una sequenza di lettere uguali, e quindi non devo ricontarla, 0 altrimenti
int contaSequenza;
int seqcont;
//Apro il file in modalità lettura
FILE *pf;
//pf = fopen(("caratteri.txt","r")!=NULL);
pf = fopen ("caratteri3.txt","r");
if ( pf == NULL)
{
printf("Impossibile aprire il file");
exit(1);
}
//Leggo carattere per carattere dal file finchè il file non è finito
while((carattereCorrente = getc(pf))!=EOF)

	{
	    //Verifico se il carattere letto è una cifra
        if ((carattereCorrente >= 48)&&(carattereCorrente <= 57))
			{
			//Se è una cifra la conta
            occorrenzaCarattere[carattereCorrente - 48]++;
			//se è in sequenza conta la sequenza per quel carattere
            if (carattereCorrente == caratterePrecedente +1)
                {
                occorrenzaSuccessivo[caratterePrecedente - 48]++;
                }

            if ((carattereCorrente == caratterePrecedente) && (seqcont==0))

				{
                contaSequenza = 1;
                occorrenzaSequenze[carattereCorrente - 48]++;
           		}
            else
				{
                contaSequenza = 0;
            	}

            }


		//Verifico se il carattere letto è una lettera maiuscola
        if ((carattereCorrente >= 65) && (carattereCorrente <= 90))
		{
			//Se è una lettera maiuscola la conta
            occorrenzaCarattere[carattereCorrente - 55]++;
			//se è in sequenza conta la sequenza per quel carattere
            if (carattereCorrente == caratterePrecedente +1)
                 occorrenzaSuccessivo[caratterePrecedente - 55]++;
                if ((carattereCorrente==caratterePrecedente)&&(seqcont==0))
                {
                contaSequenza = 1;
                occorrenzaSequenze[carattereCorrente - 55]++;
                }
                    else
                        {
                        contaSequenza = 0;
                        }

			//Verifico se il carattere letto è una lettera minuscola
            if ((carattereCorrente >= 97) && (carattereCorrente <= 122))
            {
            //Se è una lettera minuscola la conta
            occorrenzaCarattere[carattereCorrente - 61]++;
			//se è in sequenza conta la sequenza per quel carattere
                if (carattereCorrente == caratterePrecedente +1)
                    occorrenzaSuccessivo[caratterePrecedente - 61]++;
                    if ((carattereCorrente==caratterePrecedente)&&(seqcont==0))
                    {
                    contaSequenza = 1;
                    occorrenzaSequenze[carattereCorrente - 61]++;
                    }
                        else
                            {
                            contaSequenza = 0;
                            }

           }
        }
	}


    for(i=0; i<30; i++)
    {
    printf("occorrenzaCarattere:%d\n",occorrenzaCarattere[i]);
    }
    for(k=0; k<30; k++)
    {
    printf("occorrenzaSuccessivo:%d\n",occorrenzaSuccessivo[k]);
    }
    for(g=0; g<30; g++)
    {
    printf("occorrenzaSequenze:%d\n",occorrenzaSequenze[g]);
    }  
}