#include<stdio.h>
#include<conio.h>
#include<string.h>
#define TL 10
#define TN 3
#define TD 3
void cargadatos(char [][TL],float[],char[][TL]);
void muestradatos(char[][TL],float[],char[][TL]);
void ordena(char[][TL],float[],char[][TL]);
void main()
{
float vecsueldos[TN];
char vecnombres[TD][TL],vectel[TD][TL];
clrscr();
cargadatos(vecnombres,vecsueldos,vectel);
clrscr();
muestradatos(vecnombres,vecsueldos,vectel);
getch();
clrscr();
ordena(vecnombres,vecsueldos,vectel);
getch();
}
void cargadatos(char vecnom[][TL],float vecsueld[],char vectel[][TL])
{
int i;
char nombre[TL],tel[TL];
for (i=0;i<TD;i++)
{
printf("ingrese el nombre del empleado: ");
fflush(stdin);
gets(nombre);
strcpy(vecnom[i],nombre);
printf("ingrese el sueldo del empleado :");
scanf("%f",&vecsueld[i]);
printf("ingrese el numero de telefono: ");
fflush(stdin);
gets(tel);
strcpy(vectel[i],tel);
}
}
void muestradatos(char vecnom[][TL],float vecsueld[],char vectel[][TL])
{
int i;
printf("Los datos ingresados son: ");
for(i=0;i<TD;i++)
printf("\n\t %s \t\t %f \t %s",vecnom[i],vecsueld[i],vectel[i]);
}
void ordena(char vecnom[][TL],float vecsueld[],char vectel[][TL])
{
int i,h,z,a,f;
float aux;
char auxi,auxil;
for (i=0;i<TD-1;i++)
for (h=i+1;h<TD;h++)
{
for(a=0;a<TL;a++)
for(f=0;f<TL;f++)
{
if (vecsueld[i]>vecsueld[h])
{ aux=vecsueld[i];
vecsueld[i]=vecsueld[h];
vecsueld[h]=aux;
auxi=vectel[i][a];
vectel[i][a]=vectel[h][f];
vectel[h][f]=auxi;
auxil=vecnom[i][a];
vecnom[i][a]=vecnom[h][f];
vecnom[h][f]=auxil;
}
}
}
{
printf(" los datos ordenados por sueldo son: \n");
{
for(z=0;z<TD;z++)
printf("\n\t %s \t\t %f \t %s",vecnom[z],vecsueld[z],vect[z]);
getch();
}
}
}