quinta-feira, 3 de outubro de 2013
Programação C - Tecnólogo
Srs alunos:
Segue solução, não otimizada, do exercício que solicitava a leitura de dois vetores A e B de um arquivo e a gravação em outro arquivo de um vetor
C = A U B. Era admitido que os vetores não possuíam elementos repetidos e que o resultado não precisava ser ordenado.
Até a próxima postagem!
------------------------------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
int main()
{ int vetor1[20];
int vetor2[40];
int k=0,n,max1,max2,j,l,a=0;
char nomearq[] = {"vetores.txt"},nomearq1[] = {"c:\\Users\\Marco\\Documents\\2013_2\\uniao.txt"};
FILE *fp, *fp1;
fp=fopen(nomearq,"r");
if(fp==NULL) exit(1);
fp1=fopen(nomearq1,"w");
if(fp1==NULL) exit(1);
while(1)
{ fscanf(fp,"%d ",&vetor1[k]);
if(vetor1[k]==-1)break;
k++;
}
max1=k-1;
k=0;
while(1)
{ fscanf(fp,"%d ",&vetor2[k]);
if(vetor2[k]==-1)break;
k++;
}
max2=k-1;
k=0;
fclose(fp);
for(j=0;j<=max1;j++)
for(l=0;l<=max2;l++)
{
if(vetor1[j]==vetor2[l])break;
if(l==max2)
{
a++;
vetor2[max2+a]=vetor1[j];
}
}
for(l=0;l<=(max2+a);l++)
fprintf(fp1,"%d ",vetor2[l]);
printf("Arquivo gravado");
fclose(fp1);
return 0;
}
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário