Es mi segunda duda con respecto a arrays de caracteres, perdonen mi ignorancia, me estoy iniciando en programacion con C..
Tengo un ejercicio de arrays el cual dice:
Contar el numero de veces que cada letra mayuscula se producen en una linea de texto leida por el teclado y decir que caracteres se encontraron y cuantas veces se repitió cada uno.
He logrado hacer que cuente la cantidad de mayusculas encontradas a través de éste bucle
Código
while(cadena[i] != NULL) { if ((cadena[i] >= 'A' && cadena[i] <= 'Z')) contador++; i++; }
Pero no sé como hacer para que me diga cuantas veces se repitió A,B,C etc..
Estoy usando una cadena unidimensional para guardar el texto del teclado.
Otra cosa muy importante y es lo que me está impidiendo continuar, ¿como se hace para mostrar un caracter almacenado en un elemento del array?
Me gustaria que mostrará el mensaje como:
0=H
1=O
2=L
3=A
y asi conocer en que indice se encuentra cada caracter para despues comparar cada uno con un if /else if, pero sin resultado positivos, he intentado con:
Código
char cadena[20]; int i=0; for(i=0;i<20;i++){ cadena[i]=i; } return 0;
Eso es lo más cerca que he estado de conseguir la lista pero me muestra simbolos y caritas

Espero me hayan entendido y me puedan orientar.
OJO: ya busque en el foro "programacion c/c++", como "mayusculas" y solo me muestra cinco post, ninguno como éste.