• Jueves 2 de Mayo de 2024, 01:35

Autor Tema:  PUnteros chequen mi codigo porfas  (Leído 1203 veces)

autenticdec

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
PUnteros chequen mi codigo porfas
« en: Lunes 24 de Mayo de 2010, 05:19 »
0
BUENO NO ES UN NUEVO  TEMA EN SI  Soló  ESQ   TENGO UNA BASE  DE DATOS  PERO  ME MARCA ERROR   EN LA  PARTE  DE REPORTE  ME GUSTARIA  SABER SI ALGUIEN ME PUEDE HACHAR LA MANO  GRACIAS

AQUI LES DEJO EL  CODIGO...


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

const int N=5;

struct fecha{
   int dd;
   int mm;
   int aa;
   };

struct datos_emp{
   char c[5];
   char n[90];
   int hw;
   float ph;
   float s;
   char t;
   fecha f;
   }*pdatos;

   datos_emp emp[N];
      int i=0, j, k, ci, opcb, flag , d, m, a;
      char r, ne[5], cc, ca[5], opcc, cb[90], opcd;
      float cf;

void menu(void);
void altas(struct datos_emp* pdatos);
void bajas(struct datos_emp* pdatos);
void consultas(struct datos_emp* pdatos);
void reportes(struct datos_emp* pdatos);
void modificaciones(struct datos_emp* pdatos);
void salir(struct datos_emp* pdatos);

int main() {
   menu();


   return 0;
   }

void menu(void){


      char opc;
      struct datos_emp* pd;

   do{
      clrscr();
      printf("ASOCIACION AVAYGMT S.A de C.Vnn");
      printf("nMenu principal:n");

      printf("[A]ltasn");
      printf("ajasn");
      printf("[C]onsultasn");
      printf("[R]eportesn");
      printf("[M]odificacionesn");
      printf("alirn");
      printf("nSeleccione su opcion tecleando la letra que corresponda en corchetesn");
      fflush(stdin);
      scanf("%c",&opc);

      switch(opc){
         case 65 :
         case 97 : altas(pd);
         break;
         case 66 :
         case 98 : bajas(pd);
         break;
         case 67 :
         case 99 : consultas(pd);
         break;
         case 82 :
         case 114: reportes(pd);
         break;
         case 77 :
         case 109: modificaciones(pd);
         break;
         case 83 :
         case 115 :salir(pd);
         break;
         return;

         }

      }while(opc!=115 && opc!=83);
   getch ();
   return;
   }
void altas(struct datos_emp* pdatos){
   do{
      clrscr();
      printf("ASOCIACION AVAYGMT S.A de C.Vnn");
      printf("Introduzca los datos del empleado %i: nn",i);
      printf("Clave del empleado: "); fflush(stdin); gets(emp.c);
      printf("Nombre completo del empleado: "); gets(emp.n);
      printf("Horas de trabajo del empleado: "); scanf("%i",&emp.hw);
      printf("Pago de precio por hora: "); scanf("%f",&emp.ph);
      printf("Tipo de empleado (A, B o C): "); fflush(stdin); scanf("%c",&emp.t);
      printf("Dia de ingreso: "); scanf("%i",&emp.f.dd);
      printf("Mes de ingreso: "); scanf("%i",&emp.f.mm);
      printf("Año de ingreso: "); scanf("%i",&emp.f.aa);
      emp.s=emp.hw*emp.ph;
      i++;
      printf("Desea dar de alta otro empleado[S/N]?"); fflush(stdin); scanf("%c",&r);
      }
      while(r!=78 && r!=110);
      clrscr();
      return;
      }
void bajas(struct datos_emp* pdatos){
   clrscr();
   printf("ASOCIACION AVAYGMT S.A de C.Vnn");
   printf("Teclea la clave del empleado que deseas dar de baja: "); fflush(stdin); gets(ne);
   flag=0;
   k=0;
   do{
      if(strcmp(ne, emp[k].c)==0){
         printf("nnEstas seguro que desea eliminar el registro de ");
         printf("Empleado %in",k);
         printf("Clave: %sn",emp[k].c);
         printf("Nombre: %sn",emp[k].n);
         printf("Horas de trabajo: %in",emp[k].hw);
         printf("Pago por hora:$ %.2fn",emp[k].ph);
         printf("Salario:$ %.2fn",emp[k].s);
         printf("Tipo de empleado: %cn",emp[k].t);
         printf("Fecha de ingreso: %i/ %i/%inn",emp[k].f.dd,emp[k].f.mm,emp[k].f.aa);
         printf("[S/N] ");
         scanf("%c",&opcd);



         if (opcd!=78 && opcd!=110){
            if(k<i-1){
               clrscr();
               for(j=k;j<i-1;j++){
                  strcpy(emp[j].c,emp[j+1].c);
                  strcpy(emp[j].n,emp[j+1].n);
                  emp[j].hw=emp[j+1].hw;
                  emp[j].ph=emp[j+1].ph;
                  emp[j].t=emp[j+1].t;
                  emp[j].f.dd=emp[j+1].f.dd;
                  emp[j].f.mm=emp[j+1].f.mm;
                  emp[j].f.aa=emp[j+1].f.aa;
                  emp[j].s=emp[j+1].s;
                  }
               }
               i=i-1;
               printf("Ha eliminado exitosamente el registro... ");
               }
            flag++;
            }
         k++;
         }while(k<i);
      if (flag==0)
      printf("No se encontro empleado con esa clave");
      getch();
      return;
      }

void consultas(struct datos_emp* pdatos){
   clrscr();
   printf("ASOCIACION AVAYGMT S.A de C.Vnn");
   printf("Teclea la clave del empleado que deseas consultar: "); fflush(stdin); gets(ne);
   flag=0;
   k=0;
   do{
      if(strcmp(ne, emp[k].c)==0){
         printf("nnEmpleado %i ",k);
         printf("Clave: %sn",emp[k].c);
         printf("Nombre: %sn",emp[k].n);
         printf("Horas de trabajo: %in",emp[k].hw);
         printf("Pago por hora:$ %.2fn",emp[k].ph);
         printf("Salario:$ %.2fn",emp[k].s);
         printf("Tipo de empleado: %cn",emp[k].t);
         printf("Fecha de ingreso: %i/ %i/%in",emp[k].f.dd,emp[k].f.mm,emp[k].f.aa);
         flag++;
         }
      k++;
      }while(k<i);
   if (flag==0)
   printf("No se encontro empleado con esa clave");
   getch();
   return;
   }
void reportes(struct datos_emp* pd){
   clrscr();
   printf("ASOCIACION AVAYGMT S.A de C.Vnn");
   printf("nnLos datos de los empleados son:nn");

   printf("nnClave:t Nombre:n",j);

      for(j=0;j<i;j++){
         printf("%dt %cn",pd->c, pd->n);
         }
      getch();
      return;
      }

void modificaciones(struct datos_emp* pdatos){
   clrscr();
   printf("ASOCIACION AVAYGMT S.A de C.Vnn");
   printf("Teclea la clave del empleado que deseas modificar: "); fflush(stdin); gets(ne);
   flag=0;
   k=0;
   do{
      if(strcmp(ne, emp[k].c)==0){
         printf("nnEstas seguro de modificar a ");
         printf("nnEmpleado %in",k);
         printf("Clave: %sn",emp[k].c);
         printf("Nombre: %sn",emp[k].n);
         printf("Horas de trabajo: %in",emp[k].hw);
         printf("Pago por hora:$ %.2fn",emp[k].ph);
         printf("Salario:$ %.2fn",emp[k].s);
         printf("Tipo de empleado: %cn",emp[k].t);
         printf("Fecha de ingreso: %i/ %i/%inn",emp[k].f.dd,emp[k].f.mm,emp[k].f.aa);
         printf("(s/n) ");
         scanf("%c",&opcc);

            if (opcc!=78 && opcc!=110){
               clrscr();
               printf("nnMenu de modificaciones:n");
               printf("nQue dato quiere cambiar:");
               printf("n[1]Claven");
               printf("[2]Nombren");
               printf("[3]Horas de trabajon");
               printf("[4]Pago de presio por horan");
               printf("[5]Tipo de empleadon");
               printf("[6]Dia de ingreson");
               printf("[7]Mes de ingreson");
               printf("[8]Año de ingreson");
               printf("nSeleccione su opcion tecleando el numero que corresponda en corchetesn");
               scanf("%i",&opcb);
                  switch (opcb){
                     case 1:
                        clrscr();
                        printf("Introduce la nueva clave: "); fflush(stdin); gets(ca);
                        strcpy(emp[k].c, ca);
                        break;

                     case 2:
                        clrscr();
                        printf("Introduce el nuevo nombre: "); fflush(stdin); gets(cb);
                        strcpy(emp[k].n, cb);
                        break;

                     case 3:
                        clrscr();
                        printf("Introduce las horas de trabajo: "); scanf("%i",&ci);
                        emp[k].hw = ci;
                        break;

                     case 4:
                        clrscr();
                        printf("Presio por hora: "); scanf("%f",&cf);
                        emp[k].ph = cf;
                        break;

                     case 5:
                        clrscr();
                        printf("Tipo de empleado: "); fflush(stdin); scanf("%c",&cc);
                        emp[k].t = cc;
                        break;

                     case 6:
                        clrscr();
                        printf("Dia: "); scanf("%i",&d);
                        emp[k].f.dd = d;
                        break;

                     case 7:
                        clrscr();
                        printf("Mes: "); scanf("%i",&m);
                        emp[k].f.mm = m;
                        break;

                     case 8:
                        clrscr();
                        printf("Año: "); scanf("%i",&a);
                        emp[k].f.aa = a;
                        break;
                        }
                     printf("Su cambio se ha efectuado exitosamente... ");
                     }
                  flag++;
               }
            k++;
            }while(k<i);
         if (flag==0)
         printf("No se encontro empleado con esa clave");
         getch();

         return;
         }

void salir(struct datos_emp* pdatos){
   clrscr();
   printf("ASOCIACION AVAYGMT S.A de C.Vnn");
   return;
   }







SALE ESPERO  QUE ME PUEDAN AYUDAR