RE:Eliminar caracteres repetidos en un arreglo
Primero, aquí tienes una versión alternativa a la ya aparecida, que genera un
informe cuando termina (solo funciona con caracteres imprimibles, el 'reductor' con
todos)
#include <stdio.h>
int Buffer[256];
char Destino[256];
char Origen[]="Esto es una prueba de eliminacion de caracteres repetidos";
void main()
{
int Cuenta=0, bucle=0;
for(bucle; bucle<sizeof(Origen); bucle++) // Suprime las repeticiones
if((*(Buffer+*(Origen+bucle)))++==0)
*(Destino+(Cuenta++))=*(Origen+bucle);
// A partir de aqui se genera un informe del resultado, puedes suprimirlo
printf(" Origen: %s\n",Origen);
printf("Destino: %s\n\n",Destino);
printf(" Reporte: Sin repetir: %u - Repetidos: %u - Total: %u\n"
" --------------------------------------------------------------\n",
Cuenta, sizeof(Origen)-Cuenta, sizeof(Origen));
for(bucle=32; bucle<127; bucle++)
printf("%c - %4u\t",bucle,*(Buffer+bucle));
}
----
Y en segundo lugar, como información para todos:
1- Yo soy español y empleo 'arreglo'
2- Si coges un diccionario y buscas 'array', lo primero que aparece es el término 'arreglo'.
3- Arreglo no significa solo arreglar, también significa orden. En cualquier caso, significa
exactamente lo mismo que 'array' porque es su traducción al español.
3- Hay varios libros, como Aprendiendo Borland C++ 5 ... , que usan 'arreglo'
Saludos,
Endos.