La visualizzazione deve avvenire quando hai finito di inserire la frase, fuori dal while, ovviamente, se no come conta le frequenze?
while ((c = getchar()) != EOF)
if (c >= 'a' && c <= 'z')
frequenza[c - 'a']++;
for(c=0; c<26; c++)
if(frequenza[c]>0)
printf("Lettera %c : %d\n", c+'a', frequenza[c]);