Alguém consegue me ajudar nessa questão? Eu criei a função pra troca dos caracteres, mas na hora que eu tento ler o arquivo e modificar eu não consigo fazer a substituição.
#include <stdio.h>
#include <stdlib.h>
char Troca (char x)
{
if (x == 'a' || x == 'A')
return ('z');
else if ( x == 'e' || x == 'E')
return ('y');
else if (x == 'i' || x == 'I' )
return ('x');
else if (x == 'o' || x == 'O')
return ('w');
else if (x == 'u' || x == 'U')
return ('*');
}
int main ()
{
char C, X, result;
FILE *arq;
arq = fopen("Letras.txt", "w");
if (arq == NULL){
printf("O arquivo não pode ser aberto corretamente.");
fclose(arq);
}
else
{
fprintf(arq, "A,E,I,O,U.");
fclose(arq);
}
arq = fopen("Letras.txt", "r");
if (arq == NULL){
printf("O arquivo não pode ser aberto corretamente.");
fclose(arq);
}
else
{
printf("Lendo os dados armanezados no arquivo: \n");
while((C = getc(arq) ) != EOF){
printf("%c", C);}
fclose(arq);
}
arq = fopen("Letras.txt", "a");
if (arq == NULL){
printf("O arquivo não pode ser aberto corretamente.");
fclose(arq);
}
else
{
while((C = getc(arq) ) != EOF){
fscanf(arq,"%c",&X);
result = Troca(X);
fprintf("%c",result);
}
fclose(arq);
}
arq = fopen("Letras.txt", "r");
if (arq == NULL){
printf("O arquivo não pode ser aberto corretamente.");
fclose(arq);
}
else
{
printf("\n\nLendo os novos dados armazenados no arquivo.\n");
while((C = getc(arq) ) != EOF){
printf("%c", C);}
fclose(arq);
}
return 0;
}