How to print string characters and their frequencies in C

1 Answer

0 votes
#include <stdio.h>
#include <string.h>
#include <ctype.h>
    
void print_char_frequencies(char s[]) { 
    int letters[256] = {0}; 
     
    for (int i = 0; i < strlen(s); i++) {
         if (isalpha(s[i]))
             letters[(int)s[i]]++;
    }
     
    for (int i = 0; i < 256; i++) { 
        if (letters[i] != 0) {
            printf("%c %d\n", (char)i, letters[i]);
        }
    } 
} 
int main() 
{                       
    char s[] = "c programming pro oo"; 
        
    print_char_frequencies(s);
         
    return 0; 
} 
      
      
      
/*
run:
      
a 1
c 1
g 2
i 1
m 2
n 1
o 4
p 2
r 3
      
*/

 



answered Dec 3, 2019 by avibootz
...