Título: Alguien me puede ayudar con este código? Desconozco por que no funciona Publicado por: Rgpala en 19 Diciembre 2022, 02:29 am #include <stdio.h>
#include <stdlib.h> typedef struct Bodega{ char Nombre_producto; int codigo_barras; int cantidad; float precio; }Producto; int Pedir_cantidad(); Producto Agregar_producto(); void Mostrar_productos(Producto *productos,int Num_productos); void Mostrar_producto(Producto *productos,int posicion); int Busqueda(Producto *productos,int Codigo,int contador); int main() { int Num_productos,eleccion=0,contador_productos=0; Num_productos=Pedir_cantidad(); Producto productos[Num_productos]; system("cls"); while(eleccion!=4){ printf("Que deseas realizar"); printf("1)Agregar producto"); printf("2)Buscar producto"); printf("3)Mostrar productos"); printf("4)Salir"); scanf("%d",&eleccion); switch(eleccion){ case 1:{ if(contador_productos==Num_productos){ printf("No es posible agregar mas productos"); }else{ productos[contador_productos]=Agregar_producto(); contador_productos++; } break; } case 2:{ int buscado,Codigo; printf("Dame el numero de barras para encontrar el producto"); scanf("%d",&Codigo); buscado=Busqueda(productos,Codigo,contador_productos); if(buscado==-1){ printf("Producto no encontrado"); }else{ Mostrar_producto(productos,buscado); } break; } case 3:{ Mostrar_productos(productos,contador_productos); break; } case 4:{ printf("Adios"); } return 0; } int Pedir_cantidad(){ int cantidad; printf("Dame la cantidad de productos que deseas agregar a tu tienda"); scanf("%d",&cantidad); return cantidad; } } Producto Agregar_producto(){ Producto articulo; printf("Dame el nombre del producto:"); scanf("%s",&articulo.Nombre_producto); printf("Dame el precio del producto:"); scanf("%f",&articulo.precio); printf("Dame la cantidad disponible del producto:"); scanf("%d",&articulo.cantidad); printf("Dame el codigo de barras:"); scanf("%d",&articulo.codigo_barras); return articulo; } void Mostrar_productos(Producto *productos,int Num_productos){ for(int i=0;i<Num_productos;i++){ printf("Producto: %disponible",productos.Nombre_producto); printf("Precio: %.2f",productos.precio); printf("Cantidad disponible: %d",productos.cantidad); printf("Codigo de barras: %d",productos.codigo_barras); printf("\n"); } } void Mostrar_producto(Producto *productos,int posicion){ printf("Producto:%d",productos[posicion].Nombre_producto); printf("Precio:%.2f",productos[posicion].precio); printf("Cantidad disponible:%d",productos[posicion].cantidad); printf("Codigo de barras:%d",productos[posicion].codigo_barras); printf("\n"); } int Busqueda(Producto *productos,int Codigo,int contador){ int i=0; for(i;i<contador;i++){ if(productos.codigo_barras==Codigo){ return i; } } return -1;} Título: Re: Alguien me puede ayudar con este código? Desconozco por que no funciona Publicado por: Lieutenant McFarley en 19 Diciembre 2022, 09:51 am PERDÓN, no me di cuenta de que el mensaje estaba duplicado en el foro de C/C++ y contestado aludiendo arreglos dinámicos, malloc, sizeof, free...
|