/* Count both uppercase and lowercase letters separately. */ #include #include int main(void) { int c, i, uc_letter[26], lc_letter[26]; for (i = 0; i < 26; ++i){ /* init array to zero*/ uc_letter[i] = 0; lc_letter[i] = 0; } while ((c = getchar()) != EOF) /* count the letters */ if (isupper(c)) ++uc_letter[c - 'A']; else if (islower(c)) ++lc_letter[c - 'a']; for (i = 0; i < 26; ++i) { /* print the results */ if (i % 3 == 0) printf("\n"); printf("%4c:%3d", 'A' + i, uc_letter[i]); printf("%4c:%3d", 'a' + i, lc_letter[i]); } printf("\n\n"); return 0; }