el problema es que estas cogiendo los numeros del archivo como caracteres., por eso se transforman en 48 o 49.
c = getc(fp)
en vez de eso coge los numeros como numeros
fscanf(fp, "%d", matriz[][]);
siendo matriz de tipo entero (int)
Cita: supongo que lo que tendre que hacer es una conversion manual, cuando sea 48 lo que me devuelva, meto un 0, y si es 49, meto un 1, no?
porque he intentado hacerlo asi:
matriz[i][j]=atoi(c) pero me da un fallo
escribe el codigo entero