Per forza non funziona, non stai usando max... Quando finisce una serie consecutiva della stessa lettera, prima di azzerare con e aggiornare let devi confrontare il numero di occorrenze contate con max, e se è superiore al valore attuale, sostituire max con con:
codice:
char l=0, let=0, maxLet;
...
else
{
if(con>=max)
{
max=con;
maxLet=let;
}
let=l; //La lettera di paragone diventa la nuova lettera
con=0;
}
}
}
printf("\n\n");
printf("La lettera che si ripete piu' volte e' la %c e si ripete %d volte", maxLet,max);
printf("\n\n");
Tra l'altro, perché scrivi direttamente i numeri dei caratteri? Usa più semplicemente i char literal:
codice:
if((l>='A' && l<='Z') || (l>='a' && l<='z') && (l!=' '))