elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / ordenar por orden alfabetica archivo txt en C en: 13 Noviembre 2018, 00:16 am
Hola! Tengo que ordenar alfabeticamente un archivo txt dentro de un TDA y lo que hice no me esta funcionando, compila y ordena pero algunos nombres desaparecen en el archivo y en la hora de mostrar por consola lo muestra mal. Les adjunto lo que hice, mando solo la funcion de ordenar que esta dentro del TDA. El archivo ya lo consegui cargar con todos los nombres desordenados.
Código:
FILE*archivo = fopen("Equipos y Jugadores.txt","r");
    int i,j;
    int contador = 0;
    char aux[20];

    if(archivo == NULL)
    {
        printf("No se ha podido abrir el archivo.\n");
        exit(1);
    }

    for(i = 0; !feof(archivo); i++)
    {
        fgets(n[i].nombres,20,archivo);
        contador++;
    }

    for(i = 0; i < contador; i++)
    {
        for(j = 0; j < contador; j++)
        {
            if(strcmp(n[j].nombres,n[j+1].nombres) > 0)
            {
                strcpy(aux,n[j].nombres);
                strcpy(n[j].nombres,n[j+1].nombres);
                strcpy(n[j+1].nombres,aux);
            }
        }
    }
    fclose(archivo);
    fopen("Equipos y Jugadores.txt","w");

    for(i = 0; i < contador; i++)
    {
        fprintf(archivo,"%s",n[i].nombres);
    }
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines