Buenas, te comento lo que para mi esta fallando, puede ser otra cosa pero espero poder ayudarte en algo.
Necesitarías poner: scanf("%c", &letraR);
Ya que para scanf(), necesitas pasar un puntero a char, sino no tiene forma de guardar el carácter.
Digamos que letraR es 0 antes del scanf. Con el código que tenes de momento, lo que estas haciendo es scanf("%c", 0);
Lo que querrías seria algo así como:
scanf("%c", algún-lugar-para-poner-un-char);
ósea &letraR
Y también paso a comentarte que viendo el código así medio por arriba, creería que hay muchas cosas que no te van a funcionar como queres, por ejemplo:
scanf("%c",frase[i]); estaría necesitando lo mismo que lo de arriba, poner scanf("%c",&frase[i]);
y también supongo que lo que queres es que se almacene un string, por lo tanto en vez de %c deberías poner %s, porque sino solamente te almacenaría el primer carácter, digamos que ingresas la palabra 'hola' , &frase[i] solamente contendría la letra h.
Luego también comentarte que vos lo que estas haciendo al poner char *frase[i] con i=100, es crear un arreglo de tamaño 100 de punteros a char. Por lo tanto lo que haces con scanf("%s",&frase[i]); es: leer el string y hacer que el "valor" al que apunta el puntero hacia char de la celda 100 del arreglo frase, apunte a ese string ingresado. Ósea que vas a tener un arreglo con 99 espacios indefinidos y solo ese string guardado en la celda 100.
Por lo tanto strlen() se va a portar medio raro o directamente te va a tirar segmentation fault al aplicarlo a esa estructura.