marcoshuck icon

Orden por apellido - Archivos y cadenas

marcoshuck | PRO | 11/01/13 03:34:57 PM UTC | 0 ⭐ | 398 👁️ | Never ⏰ | []
C |

1.07 KB

|

None

|

0 👍

/

0 👎

#include <stdio.h>
#include <stdlib.h>
 
#define SIZE_V 3
 
typedef struct 
{
    char nombre[30],
    apellido[30];
} unNombre;
 
int main(int argc, char *argv[])
{
    unNombre v[SIZE_V];
    unNombre aux;
    int i, j;
    strcpy(v[0].nombre, "Marcos");
    strcpy(v[0].apellido, "Huck"); 
    
    strcpy(v[1].nombre, "Ariel");
    strcpy(v[1].apellido, "Borches"); 
    
    strcpy(v[2].nombre, "Pedro"); 
    strcpy(v[2].apellido, "Gomez");
    for(i = 0; i < SIZE_V-1; i++)
    {
        for(j = i + 1; j < SIZE_V; j++)
        {
            if(strcmp(v[i].apellido, v[i+1].apellido) > 0)
            {
                strcpy(aux.apellido, v[i].apellido);
                        strcpy(aux.nombre, v[i].nombre);
                strcpy(v[i].apellido, v[j].apellido);
                strcpy(v[i].nombre, v[j].nombre);
                strcpy(v[j].apellido, aux.apellido);
                strcpy(v[j].nombre, aux.nombre);
            }
        }
    }
    for(i = 0; i < 3; i++)
    {
        printf("%s, %s\n", v[i].apellido, v[i].nombre);
    }
    system("PAUSE");    
    return 0;
}

Comments