void borrar_producto(struct Tgestion producto)
{
int i;
char op;
printf("\nLos datos a borrar son:");
printf("\nCodigo: %s",producto.codigo);
printf("\nNombre: %s",producto.nombre);
printf("\nPeso: %f",producto.peso);
printf("\nVolumen: %f",producto.volumen);
printf("\nDesea eliminarlo?:(s/n)");
scanf("%c",&op);
tolower(op);
getchar();
if(op=='s')
{
while(producto.codigo[i]!='\0')
producto.codigo[i]=' ';
while(producto.nombre[i]!='\0')
producto.nombre[i]=' ';
/*producto.peso=0;
producto.volumen=0;*/
printf("\nYa han sido borrados");
}
if(op=='n')
printf("\nElegir otra opcion");
Este es el código que he hecho para borrar un elemento del array de estructuras struct producto[50].
El problema que cuando eligo la opción s me sale ésto:
****GESTION PRODUCTOS DE ALMACEN,MENU DE OPCIONES****
a.Introducir un nuevo producto:
b.Borrar un producto:
c.Modificar datos de un producto existente en el almacen:
d.Mostrar todos lo productos en existencia:
e.Ordenar la lista de productos segun su nombre:
f.Ordenar la lista de productos segun sus pesos:
s.Salir del programa:
Elija una opcion:a
Introduce el codigo de barras:234567
Introduce el nombre del producto:perno
Introduce el peso (Kg):0.223
Introduce el volumen del producto (cm3):0.011
****GESTION PRODUCTOS DE ALMACEN,MENU DE OPCIONES****
a.Introducir un nuevo producto:
b.Borrar un producto:
c.Modificar datos de un producto existente en el almacen:
d.Mostrar todos lo productos en existencia:
e.Ordenar la lista de productos segun su nombre:
f.Ordenar la lista de productos segun sus pesos:
s.Salir del programa:
Elija una opcion:b
Introduce el nombre del producto a borrar: perno
Los datos a borrar son:
Codigo: 234567
Nombre: perno
Peso: 0.223000
Volumen: 0.011000
Desea eliminarlo?:(s/n)s
Y el programa se queda en suspenso,es decir,no sale por pantalla:
Ya han sido borrados