frase[i] è il carattere i-esimo della stringa frase, e lo stai passando ad fscanf e printf che lo interpretano come un puntatore...Quello che devi passarci è frase e basta (l'array decade a puntatore al primo carattere e scanf/printf ci leggono/scrivono dentro correttamente).
In ogni caso, questi sono abbastanza rudimenti di C, da che libro stai studiando?