#include #include char* InicializarCadena() { int i = 0; char c, *s; s = (char*)malloc(sizeof(char)); while((c = getchar()) != '\n') { s[i] = c; i++; s = (char*)realloc(s, (i + 1)*sizeof(char)); } s[i] = '\0'; return s; } void EscribirFich(FILE *fp, char car) { char c; while(!feof(fp)) { c = fgetc(fp); if(c == car) printf("%c", '$'); else printf("%c", c); } printf("\n"); } int main() { FILE *fp; char c, *fich; printf("Introduzca el nombre de un fichero: "); fich = InicializarCadena(); printf("Introduzca el caracter a modificar: "); scanf("%c", &c); fp = fopen(fich,"r"); if(fp == NULL) { printf("ERROR al abrir el fichero"); system("PAUSE"); exit(1); } EscribirFich(fp,c); system("PAUSE"); return 0; }