#include <stdio.h>
#include <locale.h>
#define n 20
/*
9) Escreva um algoritmo que lê um vetor A[20] de inteiros apenas com valores distintos (todos
diferentes). Caso o usuário insira um inteiro já existente, o programa deve alertar a duplicidade.
*/
int main(){
setlocale(LC_ALL,"portuguese_Brazil");
int a[n], i=0, j;
do{
printf("Digite um valor: ");
scanf("%d", &a[i]);
int cont = 0;
for(j=0;j<n;j++){
if(a[i]==a[j]){
cont++;
}
}
if(cont!=0){
printf("\nEste valor já foi digitado! \n");
}
i++;
}while(i<n);
printf("\nLeitura completa\n");
return 0;
}
Galera quando compilo isto ele me retorna todas as vezes a mensagem, "Este valor já foi digitado", mas porquê isto acontece sendo que ele só retornaria isto caso encontra-se um valor igual no vetor e então atribuiria mais um a cont, mais ele faz isto todas as vezes que digito um número.