Lo que preguntas se hace con dos
bucles mientras (bucle while) (logicamente se puede hacer con otros bucles)
Yo utilizo el 1er bucle hacerMientras para ver si he seleccionado salir y el otro para ver si ya he seleccionado alguna de las opciones.
También se puede hacer creando un procedimiento menu.
Te dejo el cómo se hace en
pseudocódigo para que lo traduzcas al lenguaje de programación que vayas a utilizar:
Constantes
Entero N;
Variables
Entero Opción=N+15;
Inicio
hacer mientras (opción<>0)
hacer mientras (opcion<0) ó (opción>N)
imprimirPorPantalla "1-Esta es la primera opcion del menú.";
imprimirPorPantalla "2-Esta es la segunda opcion del menú.";
.
.
.
.
imprimirPorPantalla "N-Esta es la N opcion del menú.";
imprimirPorPantalla "0-Opción de salir";
Leer opcion;
finMientras
selecciona caso opcion
caso opcion=1: Instrucciones de la primera opción del menú.
caso opcion=2: Instrucciones de la segunda opción del menú.
caso opcion=N: Instrucciones de la tercera opción del menú.
finCaso;
finMientras;
Fin.