Buscar

Em diversas situações, nos arquivos textuais, faz-se necessária a substituição de palavras

Em diversas situações, nos arquivos textuais, faz-se necessária a substituição de palavras. Para essa questão, analise o código a seguir que coleta linha por linha de um arquivo texto e realiza a substituição de palavras. Na análise, preencha as lacunas com os códigos correspondentes.

#include

#include


 

void ProcessaLinha(char linha[],char nome_ret[],char nova_palavra[])

{

int i=0;

char tmp[40];

for(;i

if(!strncmp(&linha[i],nome_ret,strlen(nome_ret)))

{

strncpy(tmp,linha,i);

tmp[i]='\x0';

strcat(tmp,nova_palavra);

strcat(tmp,&linha[i+strlen(nome_ret)]);

strcpy(linha,tmp);

}

}


 

int main()

{

char linha[40],nome_ret[11],nova_palavra[11];

FILE *arq,*arqtmp;

arq=fopen("atividade.txt","___");

if(arq==NULL)

{

printf("Erro de abertura de arquivo origem.");

return 0;

}

arqtmp=fopen("atividade_tmp.txt","___");

if(arq==NULL)

{

printf("Erro de abertura do arquivo temporario.");

return 0;

}

printf("Palavra a ser substituida (ate 10 letras): ");

gets(nome_ret);

printf("Nova palavra (ate 10 letras): ");

gets(nova_palavra);

while(1)

{

fgets(linha,40,arq); //fgets() lê toda a linha até o

if(feof(arq))

break;

ProcessaLinha(linha,nome_ret,nova_palavra);

____(linha,arqtmp);

}

fclose(arq);

fclose(arqtmp);

if(remove("atividade.txt"))

printf("Erro na remocao.\n");

else if(rename("____", "____"))

printf("Erro no renomeamento.\n");

return 0;

}

Assinale a alternativa que você julgue possuir a sequência correta.

w ; r ; fputs ; atividade_tmp.txt ; atividade.txt .

r ; w ; fputs ; atividade_tmp.txt ; atividade.txt .

r ; w ; fgets ; atividade_tmp.txt ; atividade.txt .

w ; w ; fputs ; atividade_tmp.txt ; atividade.txt .

r ; w ; fputs ; atividade.txt ; atividade_tmp.txt .


💡 1 Resposta


✏️ Responder

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Outros materiais