He estado buscando y no encuentro que diferencia hay entre esas dos funciones de la libreria stdio, segun wikipedia dice esto:
fputc: Escribe un carácter en un fichero.
putc: Escribe un carácter en un fichero.
Luego entre a ver que tipo de argumentos reciben y me encontre con esto:
int putc(int char, FILE *stream);
int fputc(int ch, FILE *stream);
y aun sigo teniendo la duda porque pareciera que es lo mismo.