martes, 4 de septiembre de 2012

/* PROGRAMA QUE TRABAJA CON ESTRUCTURAS PARA ALMACENAR Y DIPONER DE INFORMACION*/

// para compilar: gcc p002.c -o e002.out

#include <stdio.h>
#include<string.h>

#define ntra 3
#define nhor 12
#define ndias 6


struct trabajador{
 int horario[nhor][ndias],vhora,edad,nhtra;
 char nom[12],ape[12],sexo;
 long int ced,tel;
};

int main (){
int i,j,k,icon,prod=1,ipre[3];
long int ced;
char t1[20],t2[70];
struct trabajador  emp[ntra];
FILE *fdat;
fdat=fopen("plantilla.txt","r");
for(k=0;k<ntra;k++){
 fscanf(fdat,"%s %s %s %s %s %ld",t1,emp[k].nom,t1,emp[k].ape,t1,&emp[k].ced);
 fscanf(fdat,"%s %s %d %s %d %s %c %s %ld",t1,t1,&emp[k].vhora,t1,&emp[k].edad,t1,&emp[k].sexo,t1,&emp[k].tel);
 for(i=0;i<10;i++)fscanf(fdat,"%s",t1);
 icon=0;
 for(i=0;i<nhor;i++){
  fscanf(fdat,"%s",t1);
  for(j=0;j<ndias;j++){
   fscanf(fdat,"%d",&emp[k].horario[i][j]);
   if(emp[k].horario[i][j]==1)icon++;
  }
 }
 emp[k].nhtra=icon;
 fscanf(fdat,"%s",t2);
}
fclose(fdat);
char disem[6][11]={"lunes","martes","miercoles","jueves","viernes","sabado"};
char hora[12][6]={"06a07","07a08","08a09","09a10","10a11","11a12","12a13","13a14", "14a15","15a16","16a17","17a18"};
printf("Digite la cedula\n");
scanf("%ld",&ced);
printf("que informacion desea: 1 para valor de la hora o 0 si no,\n");
printf(" 1 para cantidad de horas trabjadas o 0 si no,\n");
printf(" 1 para salario de la semana o 0 si no,\n");
scanf("%d %d %d",&ipre[0],&ipre[1],&ipre[2]);
i=-1;
for(k=0;k<ntra;k++)if(ced==emp[k].ced){
 printf("Empleado: %s %s\n\n",emp[k].nom,emp[k].ape);
 if(ipre[0]==1)printf("el valor de la hora es:%d\n",emp[k].vhora);
 if(ipre[1]==1)printf("el numero de horas laboradas es:%d\n",emp[k].nhtra);
 if(ipre[2]==1)printf("su sueldo semanal es:%d\n",emp[k].vhora*emp[k].nhtra);
 i=1;
}
if(i==-1)printf("cedula no existe\n
");
return 0;
}

No hay comentarios: