How to create an ASCII frequency table from a string in C

1 Answer

0 votes
#include <stdio.h>
#include <string.h>

#define SIZE 128

void getASCIIFrequency(const char *str, int frequencyTable[]) {
    int len = strlen(str);

    for (int i = 0; i < len; i++) {
        frequencyTable[(unsigned char)str[i]]++;
    }
}

int main() {
    const char *str = "c c++ c# java python php";
    int frequencyTable[SIZE] = {0};

    getASCIIFrequency(str, frequencyTable);

    for (int i = 0; i < SIZE; i++) {
        if (frequencyTable[i] > 0) {
            printf("%c: %d\n", i, frequencyTable[i]);
        }
    }

    return 0;
}



/*
run:

 : 5
#: 1
+: 2
a: 2
c: 3
h: 2
j: 1
n: 1
o: 1
p: 3
t: 1
v: 1
y: 1

*/

 



answered Oct 17, 2024 by avibootz

Related questions

1 answer 115 views
1 answer 114 views
1 answer 119 views
1 answer 133 views
1 answer 115 views
1 answer 107 views
...