[ Foro de C ]

no me corre

23-Nov-2013 06:00
Invitado (Citlali)
1 Respuestas

#include<stdio.h>
#include<stdlib.h>
struct provedor
{
     int numero_de_provedor[40];
     char nombre_del_provedor[20];
     char direccion_del_provedor[40];
     int telefono;
};
struct articulos
{
      int numero_de_articulo;
      char descripcion[20];
      float costo;
      int numero_de_provedores;
};




   /* reg_prov*/
   void reg_prov(void)
   {
       
           FILE*pr;
           pr=fopen("provedor.bin","wb");
           if (pr==NULL)
           {
                        printf("Error");
                        exit (-1);
           }
           do
           {
                        printf("Numero de proveedor\n");
                        scanf("%d",&pr->numero_de_provedor);
                        printf("Nombre del proveedor\n");
                        gets(pr->nombre_del_provedor);
                        printf("Direccion del proveedor\n");
                        gets(pr->direccion_del_provedor);
                        printf("telefono\n");
                        scanf("%d",&pr->telefono);
                        fwrite(pr,sizeof(provedor),1,pr);
                        return 0;
           }while(!feof(pr));
   }
 /* fin reg_prov*/
 
 
 

  /* reg_art*/
   void reg_art (void)
   {
   
        FILE*pf;
        pf=fopen("articulos.bin","wb");
        if(pf==NULL)
        {
        printf("Error");
        exit (-1);
        }
   do
   {
        printf("Numero de articulo");
        scanf("%d",&ar->numero_de_articulo);
        printf("descripcion\n");
        gets(ar->descripcion);
        printf("costo\n");
        scanf("%f",&ar->costo);
        printf("Numero de proveedor\n");
        scanf("%d",&ar->numero_de_provedores);
        fwrite(ar,sizeof (articulos),1,pf);
        return 0;
    }while(!feof(pf));
    }
     /* fin reg_art*/




    /* imp_prov*/
    void imp_prov(void)
    {
         FILE*pf;
         pf=fopen("directorio.bin","rb");
         if(pf==NULL)
         {
                     printf("Error");
                     exit -1;
         }
         do
         {
                     fread(pr,sizeof(provedor),1,pf);
                     printf("Numero de proveedor: %d\n",pr->numero_de_provedor);
                     printf("Nombre del proveedor: %s\n",pr->nombre_del_provedor);
                     printf("Direccion del proveedor:%s\n",pr->direccion_del_provedor);
                     printf("Telefono %d \n",pr->telefono);
         }while(sizeof(pf));
         fclose(pf);
         return 0;
     }
       /* fin imp_prov*/
       
       
  /* imp_art*/
     void imp_art(void);
     {
          FILE*pf;
          pf=fopen("articulos.bon","rb");
          if(pf=NULL)
      {
          printf("Error");
          exit -1;
      }
      do{
           fread(ar,sizeof(articulos),1,pf);
           printf("numero de articulos: %d\n ",ar->numero_de_articulo);
           printf("Descripcion: %s\n",ar->descripcion);
           printf("Costo: %f\n",ar->costo);
           printf("Numero de proveedor: %d\n", ar->numero_de_provedores);
      }while(!fopen(pf));  
     
      fclose(pf);
      return 0;
      }  
       /* fin imp_art*/  
       
       
       
       
       
 /* imp_rep*/
      void imp_rep(void);
      {
           FILE*pf;
           pf=fopen("articulos.bin","rb");
           pf=fopen("proveedor.bin","rb");
           if(pf==NULL)
           {
                       printf("Error");
                       exit (-1);
           }
      do
      {
           fread(pr,sizeof(provedor),1,pf);
           fread(ar,sizeof(articulos),1,pf);
           printf("Numero de articulos: %d\n",ar->numero_de_articulo);
           printf("Descripcion del articulo: %s\n",ar->descripcion);
           printf("Costo: %f\n",ar->costo);
           printf("Numero de proveedor: %d\n", pr->numero_de_provedor);
      }
      while(!fopen(pf));      
      fclose(pf);  
      }
        /* fin imp_rep*/    

int main ()
{
   struct provedor*pr;
   struct articulos*ar;
   int opc;
   printf("seleccionar la opcion a realizar:   ");
   printf("1. Registrar los datos del proveedor");
   printf("2. Registrar los datos de los articulo");
   printf("3. Imprimir los datos del proveedor");
   printf("4. Imprimir los datos de los articulos");
   printf("5. Salir");
   scanf("%d", &opc);
   
   switch(opc)
   {
             case 1:
                  reg_prov();
                  break;
             case 2:
                  reg_art();
                  break;
             case 3:
                  imp_prov();
                  break;
             case 4:
                  imp_art();
                  break;
             default:
                     printf("Opcion no valida");
                     break;
   }  
      system ("pause");
      return 0;
}          


23-Nov-2013 14:44
Nacho Cabanes (+31)

Da más detalles. ¿Qué problemas tienes?






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)