Buenas gente!<br>tengo el siguiente problema....en un proyecto de la uni me mandaron a hacer un programa que muestre un menu y permita al usuario entre trabajar con arreglos, con pilas, con colas o salir del programa...eso lo hice!;<br>
el menu principal queda asi:<br><br>1.-Arreglos<br>2.-Pilas<br>3.-Colas<br>4.-Salir<br><br>Cuando entras a las pilas o las colas el menu queda asi:<br><br>1.-Insertar<br>2.-Extraer<br>3.-Visualizar la Pila/Cola<br>4.-Salir<br>
<br>ahora...el proble es que, en teoria, cuando entras al menu de las pilas(notar que esta de segunda opcion) y escoges la opcion Salir, deberia regresar al menu principal, pero en vez de eso, se va hacia el menu de las colas, y ahi es cuando, si le das a la opcion Salir, regresa al Menu Principal<br>
<br>necesito ayuda para saber que puedo hacer para que en vez de pasar del menu de pilas al de colas, al darle a la opcion salir..se vaya al menu principal!<br><br>Les dejo parte del codigo...especificamente la parte de la pila, a ver si me pueden ayudar por favor!<br>
<br>void Pila(void)<br>{<br>     char opc;<br>    do<br>    {<br>        system("cls"); <br>  <br>        cout << "\t \t \t \tPila." << endl;<br>        cout << "\n";<br>        <br>
        cout << "1.- Insertar" << endl;<br>        cout << "\n";<br>    <br>        cout << "2.- Extraer" << endl;<br>        cout << "\n";    <br>
    <br>        cout << "3.- Visualizar la pila" << endl;<br>        cout << "\n";<br>        <br>        cout << "4.- Salir" << endl;<br>        opc=getch( );<br>
        switch(opc)<br>        {<br>            case '1':<br>                insertar( );<br>                break;<br>            case '2':<br>                extraer( );<br>                break;<br>            case '3':<br>
                visualizar( );<br>        }<br>    }while (opc!='4');<br>}<br><br>void insertar(void)<br>{<br>    AUX=(struct pila *)malloc(sizeof(struct pila));<br>    system("cls");<br>    cout << "Nombre: ";<br>
    gets(AUX->nombre);<br>    if (CAB==NULL)<br>    {<br>        CAB=AUX;<br>        AUX->ant=NULL;<br>    }<br>    else<br>    {<br>        AUX->ant=CAB;<br>        CAB=AUX;<br>    }<br>}<br><br>void extraer(void)<br>
{<br>    if (CAB==NULL) return;<br>    AUX=CAB;<br>    CAB=CAB->ant;<br>    free(AUX);<br>}<br><br>void visualizar(void)<br>{<br>    if (CAB==NULL) return;<br>     system("cls");<br>    AUX=CAB;<br>    while (AUX!=NULL)<br>
    {<br>        cout << "Nombre: " << AUX->nombre << endl;<br>        AUX=AUX->ant;<br>    }<br>    getch( );<br>}<br> <br><br>Gracias de antemano!<br>