fputs. En realidad el problema es que esa funcion recibe una cadena (puntero a caracter - char * - terminada en 0) y vos le estas pasando solo un caracter.
Una solucion simple seria esta:
Código:
char ImprimeTecla(char a)
{
FILE *file;
file=fopen("Presionadas.log","a+");
char str[] = {a, 0};
fputs(str, file);
fflush(file);
...
}