0 votos
por (760 puntos) en C/C++
hola a todos soy de nuevo la verdad me gustaria q me ayudaran con este programa es q no c donde esta mi problemas, es de manejo de archivos y si tuvieran ejemplos de todo lo q son archivs de los agradeceria q me los donaran para aprender, agradezco cualquier ayuda posible gracias,

este es mi codigo:

#include<stdio.h>

#include<conio.h>

#include<iostream.h>

struct {

    char nombre[25];

    int codigo;

    float precio;

    }electric;

//prototipos

void menu();

void ingresarproduct();

void modificarproduct();

void eliminarproduct();

void verproduct();

void imprimirproduct();

//funcion principal

int main()

{

  int op;

  int salir=0;

  while (salir !=1)

  {

   menu();

   scanf("%d",&amp;op);

   switch(op)

   {

    case 0:

      salir = 1;

      break;

    case 1:

      clrscr();

      ingresarproduct();

      break;

    case 2:

      clrscr();

      modificarproduct();

      break;

   case 3:

     clrscr();

     eliminarproduct();

     break;

  case 4:

    clrscr();

    verproduct();

    break;

  case 5:

    clrscr();

    imprimirproduct();

    break;

    }// final del switch

  }// fin del while

  printf("nn");

  return 0;

}//fin del menu principal

//MENU

void menu()

{

 printf("n                  ejercicio de ARCHIVOS               ");

 printf("n          seleccione la operacion q desea realizar    n");

 printf("n   1  -> ingresar producto");

 printf("n   2  -> modificar producto");

 printf("n   3  -> eliminar producto");

 printf("n   4  -> ver producto");

 printf("n   5  -> imprimir en impresora");

 printf("n   0  -> salir");

 printf("n op");

 }// fin el switch

 void ingresarproduct()

 {

  FILE *fichero;

  cout<<"n ingrese el nombre del producto:"<<endl;

  cin>>electric.nombre;

  cout<<"n ingrese el codigo del producto:"<<endl;

  cin>>electric.codigo;

  cout<<"n ingrese el precio del producto"<<endl;

  cin>>electric.precio;

  if ((fichero = fopen("casa.txt","a")) == NULL) {

      printf("error el archivo no existe");

     }

  else {

  fwrite (&amp;electric, sizeof(electric),1,fichero);

  printf("n producto agregado exitosamente");

  fclose (fichero);

  }

 printf("nn");

}

void modificarproduct()

{

int codigobuscado;

int encontrado=0;

struct electric newproduct;

FILE *fichero;

FILE *ficherox;

cout<<"ingrese el codigo a modificar";

cin>>codigobuscado;

if((fichero = fopen("casa.txt","r")) == NULL){

printf("n no existe el producto");

}

else {

 fread (&amp;electric, sizeof(electric), 1, fichero);

 while (!feof(fichero) &amp;&amp; (encontrado !=1)){

 if (codigobuscado == electric.codigo)

     encontrado = 1;

 fread (&amp;electric, sizeof(electric), 1 ,fichero);

 }

}

fclose (fichero);

if (encontrado == 1){

newproduct.codigo = codigobuscado;

cout<<"ingrese el nombre del producto:"<<endl;

cin>>newproduct.nombre;

cout<<"ingrese el precion:"<<endl;

cin>>newproduct.precio;

if ((fichero = fopen("casa.txt","r")) == NULL)

printf("error no existe");

else

if((ficherox = fopen("casa.txt","w")) == NULL)

printf("n error no se puede abrir el fichero");

else

{

  fread(&amp;electric, sizeof(electric),1,fichero);

  while (!feof(fichero))

  {

  if (newproduct.codigo == electric)

     fwrite(&amp;newproduct, sizeof(electric),1,ficherox);

   else

   fwrite(&amp;electric, sizeof(electric), 1, ficherox);

   fread (&amp;electric, sizeof(electric),1,fichero)

   }

   fclose (fichero);

   fclose (ficherox);

   remove("casa.txt");

   rename("casax.txt","casa.txt");

   }

  }

  else {

  printf("producto no encontrado");

  }

  printf("nn");

}

void eliminarproduct()

{

}

void verproduct()

{

}

void imprimirproduct()

{

}


Por favor, accede o regístrate para responder a esta pregunta.

Preguntas relacionadas

0 votos
0 respuestas
preguntado por jeremias10 (760 puntos) Ene 28, 2016 en C/C++
0 votos
4 respuestas
0 votos
0 respuestas
0 votos
0 respuestas
preguntado por pantera (60 puntos) Jul 9, 2019 en General
0 votos
0 respuestas
preguntado por pantera (60 puntos) Jul 9, 2019 en Java
Bienvenido a Dudas de Programación, donde puedes hacer preguntas y recibir respuestas sobre los problemas más frecuentes de los lenguajes de programación, frameworks de desarrollo y bases de datos que utilices. Foro de Línea de Código

Categorías

...