Sensillamente puedes crear un array que vaya del 1 al 10
int contadores[11] = {0}; // puedes poner hasta 10 pero despues habria que cambiar unos indices.
Despues lo que haces es lo siguiente. Si el primer numero es un 1 sumas uno a la posicion 1, si es un 2 sumas un uno a la posicion dos. Lo haces de esta forma:
Código C:
Ver originalfor(int i=1;i<16;i++)
contadores[arreglo[i]] ++;
Código C:
Ver originalfor(int i=1;i<11;i++)
cout<<setw(8)<<i<<setw(13)<<contadores[i]<<endl;c
Esta tecnica tiene un nombre, pero no me acuerdo. Se aprovecha de que tenes un numero maximo como entrada.
Espero que entiendas.