Help!

Je m'arrache les cheveux sur un exercice ou je dois trouver le nombre d'occurrences de chaque lettre dans un mot.
Exemple: tester --> t2 e2 s1 r1

j'en suis à là:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <stdio.h>
#include <string.h>
main()
{
/*VARIABLES*/
char MOT[101]="",CHAR[100]="";
int NBCHAR[100]={0},compteur,compteur2;
 
printf("Saisissez un mot en majuscules (max 100 caractères): ");
scanf("%s",MOT);
 
compteur=0;
 
while (compteur<=strlen(MOT))/*analyse du mot complet*/
    {
 
    CHAR[compteur]=MOT[compteur];/*attribution de la lettre a tester*/
    NBCHAR[compteur]=0;/*initialisation du nombre d'occurences*/
 
    for (compteur2=0;compteur2<strlen(MOT);compteur2++) /*Pour chaque lettre du mot*/
        {
        if (CHAR[compteur]==MOT[compteur2]) /*si la lettre est presente*/
            NBCHAR[compteur]=NBCHAR[compteur]+1;/*on ajoute +1 au nombre de fois ou elle est presente*/
        }
 
    compteur=compteur+1;/*on passe a le lettre suivante*/
 
    }
 
for (compteur=0;compteur<(strlen(CHAR));compteur++)
    {
    printf("\n%c%d",CHAR[compteur],NBCHAR[compteur]);
    }
}
Le resultat donné est t2 e2 s1 t2 e2 r1

le décompte est correct mais j'aimerais vraiment avoir comme resultat t2 e2 s1 r1...

quelqu'un peut il m'éclairer?