Senhores alunos:
Segue solução, feita em sala pelo aluno Marcos, do exercício que pede para encontrar os elementos comuns entre 2 vetores, sem repetição. Adicionei comentários para melhor compreensão da solução, que ficou bastante enxuta.
Até quinta!
#include <stdio.h>
// Definições dos numeros inteiros
#define N 6
#define M 6
int main()
{
unsigned short int i, j, k, L = 0, flag = 0;
// Flag = 0: encontra elemento igual, grava em C[M]
int A[N] = {0,1,2,3,2,0}, B[M] = {5,7,3,3,0,2}, C[M];
printf("Numeros Repetidos entre A e B:\n\n");
for(i = 0; i < N; i++) // Testa todos os
{ // elemento de A
for(j = 0; j < M; j++) // contra os elementos B
{
if(A[i] == B[j]) // Encontrou igual
{
flag = 0; // flag preparada para busca
for(k = 0; k < L; k++) // Verifica se já
{ // não está em C
if(A[i] == C[k]) // se está
{ // flag = 1
flag = 1;
break; //achou, não precisa
} // buscar mais
}
if(flag == 0) // se saiu com flag = 0
{
C[L]=A[i]; // coloca em C
printf("%d ", C[L]); // imprime C[L]
L++; // o tamanho do vetor C aumento
}
}
}
}
printf("\nPROGRAMA ENCERRADO!\n");
return 0;
}