Hola, me encantarían que me ayudaran a solucionar los Warning's de este programa es de urgencia, por favor y gracias de antemano.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct
{
char nombre[50];
char cantidad[50];
int codigo;
struct listado* siguiente;
} listado;
listado* primero = NULL;
listado* ultimo = NULL;
void aumentar(listado* producto)
{
producto->siguiente = NULL;
if(primero == NULL)
{
primero = producto;
ultimo = producto;
}else
{
ultimo->siguiente = producto;
ultimo == producto;
}
}
void agregarlistado(){
char avanzar = 's';
while(avanzar == 's'){
system("cls");
listado* producto = NULL;
char nombre[50];
char cantidad[50];
int codigo;
printf("C%cdigo del Producto : ",162);
scanf("%i",&codigo);
printf("Nombre del Producto : ");
fflush(stdin);
gets(nombre);
printf("Cantidad a elegir : ");
fflush(stdin);
gets(cantidad);
producto = malloc(sizeof(listado));
producto->codigo = codigo;
strcpy(producto->nombre, nombre);
strcpy(producto->cantidad, cantidad);
aumentar(producto);
printf("\n Si desea agregar otro producto presione S de lo contrario presione N (S%c/No) : ",161);
fflush(stdin);
scanf("%c", &avanzar);
}
printf("\nPresione la tecla Enter para volver al men%c del listado de compras\n", 163);
printf("Presione la tecla ESC para salir\n");
}
void eliminar(){
listado *borrar;
listado *atras = NULL;
borrar = primero;
int suprimir;
printf("\nIntroduzca el c%cdigo del producto que ser%c eliminado\n",162,160);
scanf("%i", &suprimir);
while(borrar != NULL && borrar->codigo != suprimir){
atras = borrar;
borrar = borrar->siguiente;
}
if(borrar == NULL){
printf("El producto que est%c buscando no se encuentra disponible en estos momentos, 160");
}else if (atras == NULL){
primero = primero->siguiente;
free(borrar);
}else{
atras->siguiente = borrar->siguiente;
free(borrar);
}
}
void abrir(){
system("cls");
char _eliminar = 's';
listado* i = primero;
if(primero != NULL){
while(i != NULL)
{
printf("C%cdigo del producto: %i\nNombre del producto: %s\nCantidad a elegir: %s\n",162,i->codigo, i->nombre, i->cantidad);
i = i-> siguiente;
}
printf("\n Si desea eliminar alg%cn producto presione S de lo contrario presione N (S%c/No) ",163,161);
fflush(stdin);
scanf("%c", &_eliminar);
if (_eliminar = 's'){
eliminar();
abrir();
}
}else{
printf("La lista se encuentra est%c vac%ca\n",160, 161);
}
}
void gestor(){
system("cls");
printf(" Bienvenido al Gestor de Listado de Compras\n\n\n" );
printf("1-.Insertar un producto a la lista. \n");
printf("2-.Desplegar lista y/o eliminar elemento. \n");
printf("3-.Presione 3 para salir. \n");
printf("Elija una opci%cn => \n",162);
}
int main(){
do{
gestor();
int compras;
scanf("%i",&compras);
if(compras==3){
break;
}
switch(compras){
case 1:
agregarlistado();
break;
case 2:
abrir();
printf("\nSi desea volver atr%cs presione ENTER\n", 160);
printf("Si desea salir presione la tecla ESC\n");
break;
}
}
while(getch()!= (char)30);
system("pause");
return EXIT_SUCCESS;
}