URGE menú en C++

Nadia
20 de Noviembre del 2003
Hace mucho tiempo que llevé lenguaje C++ y no me acuerdo de nada; me SUPER URGE que alguien me diga como hacer un menú en C++.

Tomando como ejemplo este arbol, que instrucciones requiere para que imprima solo una opción a escojer.

#include <stdio.h>
#include <conio.h>

struct nodo {
struct nodo *izq;
int info;
struct nodo *der;
};

typedef struct nodo *arbol;


void carga(arbol r) {
arbol dir;
char resp;

printf(" => Introduzca el dato : ");
r->info = getche();

printf("nExiste hijo izquierdo de %c (s/n)?", r->info);
resp=getch();
if(resp=='s') {
dir = new nodo;
r->izq = dir;
// llamada recursiva
carga(r->izq);
}
else r->izq = NULL;

printf("nExiste hijo derecho de %c (s/n)?", r->info);
resp=getch();
if(resp=='s') {
dir = new nodo;
r->der = dir;
// llamada recursiva
carga(r->der);
}
else r->der = NULL;
}

void preOrden(arbol r) {
if(r!=NULL) {
printf("%2c", r->info);
preOrden(r->izq);
preOrden(r->der);
}
}

void inOrden(arbol r) {
if(r!=NULL) {
inOrden(r->izq);
printf("%2c", r->info);
inOrden(r->der);
}
}

void posOrden(arbol r) {
if(r!=NULL) {
posOrden(r->izq);
posOrden(r->der);
printf("%2c", r->info);
}
}

void main() {
arbol a;
clrscr();
a = new nodo;
carga(a);
printf("nn Recorrido recursivo en pre-orden: ");
preOrden(a);

printf("n Recorrido recursivo en in-orden: ");
inOrden(a);

printf("n Recorrido recursivo en pos-orden: ");
posOrden(a);
}

System
20 de Noviembre del 2003
menu() {
clrscr();
xy(5,5); pf("Menu Principal");
xy(5,6); pf("==============");
xy(8,8); pf("1. Generar ABB");
xy(8,9); pf("2. Realizar Busqueda Pre-Orden");
xy(8,10); pf("3. Realizar Busqueda Post-Orden");
xy(8,11); pf("4. Realizar Busqueda Inorden");
xy(8,12); pf("5. Salir");
do {
xy(10,14); pf("Su opcion:"); sf("%d",&op);
} while(op > 5);
return(op);
}

void main() {
do {
op = menu();
switch(op) {
case 1 : funcion()
getch();
break;
case n : funcion()
getch();
break;
}
} while(op != 5)
}

xy = gotoxy
pf = printf
sf =scanf