ayuda con mi programa en C

Iniciado por roser24, 16 Octubre 2010, 15:52 PM

0 Miembros y 1 Visitante están viendo este tema.

roser24

tengo que hacer un progrma en el que se inserten datos de personas y sus salarios y decir quien cobro mas y cuanto fue y quien cobro y menos y cuanto.,suena sencillo pero no lo consigoo... :-(

mi codigo por el momento es el siguiente ,si me podeis ayudar os lo agradeceria.
no digo que me deis el codigo correcto sino con que me deis algun consejo..me seria muyutil. gracias
#include<stdio.h>
#define elem 3
struct empleado{
char nombre[100];
int sueldo_neto;
};
struct empleado empleado[elem];

int main(void){

int i=0,temp=0,b=0;
char basura;
for(i=0;i<elem;i++){
printf("Introduce nombre del empleado %d[maximo 100 caracteres]\n",i+1);
gets(empleado[i].nombre);

printf("Introduce sueldo neto del empleado %d\n",i+1);
scanf("%d",&empleado[i].sueldo_neto);
scanf("%c",&basura);



}
for(i=0;i<elem;i++){
for(b=0;b<elem;b++){
if(empleado[b].sueldo_neto>empleado[b+1].sueldo_neto){
temp=empleado[b].sueldo_neto;
empleado[b].sueldo_neto=empleado[b+1].sueldo_neto;
empleado[b+1].sueldo_neto=temp;


}


}
}

printf("El empleado que cobra el sueldo minimo es %s siendo sus sueldo %d:\n",empleado[0].nombre,empleado[0].sueldo_neto);




return 0;

}

Sabayon

yo kreo que estas capasitado para hacer ese programa solo tienes que pensar mas  :)

roser24

gracias por los animos.,lo consegui ya se ejecuta correctamente,por si alguien lo necesita.
/*18. Programa que lee 10 datos, compuesto cada uno de ellos por un nombre de persona y su sueldo
neto mensual, y obtiene e imprime el nombre y sueldo de la persona que más cobra y de la que menos. Si hay varias con
sueldo máximo o mínimo, se imprime la primera que aparezca en la secuencia de entrada.*/

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#define elem 10
struct empleado{
char nombre[100];
int sueldo_neto;
};
struct empleado empleado[elem];

int main(void){

int i=0,j=0,temp;
char basura,aux[100];

for(i=0;i<elem;i++){
printf("Introduce nombre del empleado %d[maximo 100 caracteres]\n",i+1);
gets(empleado[i].nombre);
fflush(stdin);

printf("Introduce sueldo neto del empleado %d\n",i+1);
scanf("%d",&empleado[i].sueldo_neto);
scanf("%c",&basura);



}
for (i=0; i<elem-1; i++)
        for (j=0; j<elem-1; j++)
    {
if((empleado[j].sueldo_neto)>(empleado[j+1].sueldo_neto)){
        temp=empleado[j].sueldo_neto;strcpy(aux,empleado[j].nombre);
        empleado[j].sueldo_neto=empleado[j+1].sueldo_neto;strcpy(empleado[j].nombre,empleado[j+1].nombre);
        empleado[j+1].sueldo_neto=temp; strcpy(empleado[j+1].nombre,aux);
}
   }


printf("El empleado que cobra el sueldo neto minimo es %s  siendo su sueldo %d\n",empleado[0].nombre,empleado[0].sueldo_neto);
printf("El empleado que cobra el sueldo neto maximo es %s  siendo su sueldo %d\n",empleado[9].nombre,empleado[9].sueldo_neto);




return 0;

}