Ho fatto una specie di esempio di cosa fa c nel commento di fianco alla if nel while. Rimane solo la questione c + 'a'
#include <stdio.h>
// conta la frquenza dei diversi caratteri contenuti nel testo d' ingresso
main()
{
int c;
int frequenza[26];
for (c = 0; c < 26; c++)
{
frequenza[c] = 0;
}
while ((c = getchar()) != EOF)
if (c >= 'a' && c <= 'z') frequenza[c-'a']++;//se c = b, la if è vera e frequenza[1] incrementa di 1 (b vale 98)
for (c = 0; c < 26; c++)
if(frequenza[c] > 0) printf("Lettera %c : %d\n", c + 'a', frequenza[c]);
}