Witam jestem początkujący, mam program ktory zamienia znaki na ich odpowiedniki ASCII i mam problem jak napisac program który bedzie zliczał 3 najczesciej wystepujace znaki, ktoś moze mi pomóc ?

#include <stdio.h>
#include <stdlib.h>
#define length 100
int main(){
char tab[length];
int test[length];
int i=0,j;
scanf("%s",&tab);
while(tab[i]!='\0'){
test[i]=tab[i];
i++;

}
for(j=0;j<i;j++){

printf("%d ",test[j]);

}
printf("\n");
printf("%d",j);
return 0;
}