Oi pessoal, alguém pode me ajudar aí? Escreva um programa para gravar de maneira intercalada em um arquivo de saída as linhas de texto presentes em dois arquivos de entrada. Os nomes dos três arquivos devem ser obtidos através da entrada padrão. O comportamento do programa é ilustrado abaixo: entrada1.txt A B entrada2.txt D E C saida.txt A D B E C Consegui fazer até aqui. #include<stdio.h>
#include<stdlib.h>
int main(void)
{
FILE*e;
FILE*e1;
FILE*s;
char x[30];
char y[30];
int i=0,j=0,cont1=0,cont2=0;
e=fopen("entrada.txt","wt");
if(e==NULL)
{
printf("não possivel abrir");
system("pause");
return 1;
}
while(fgets(x,30,e)!=NULL)
{
cont1++;
}
e1=fopen("dado.txt","wt");
if(e1==NULL)
{
printf("não possivel abrir");
system("pause");
return 1;
}
while(fgets(x,30,e1)!=NULL)
{
cont2++;
}
printf("%d %d",e,e1);
s=fopen("saida.txt","wt");
if(s==NULL)
{
printf("não foi possivel abrir o arquivo");
system("pause");
return 1;
}
if(cont1>cont2)
{
for(i=0;i<cont1;i++)
{
if(i<cont2)
{
fscanf(e,"%s",x);
fprintf(s,"%s",x);
fscanf(e1,"%s",x);
fprintf(s,"%s",x);
}
else
{
fscanf(e,"%s",x);
fprintf(s,"%s",x);
}
}
}
else
{
for(i=0;i<cont2;i++)
{
if(i<cont1)
{
fscanf(e,"%s",x);
fprintf(s,"%s",x);
fscanf(e1,"%s",x);
fprintf(s,"%s",x);
}
else
{
fscanf(e,"%s",x);
fprintf(s,"%s",x);
}
}
}
while(fscanf(s,"%s",x)!=EOF);
{
printf("%s",x);
}
fclose(s);
return 0;
system("pause");
}