Código C:
Ver original#include <stdio.h>
int pedirOpcion()
{
int opcion, a;
do {
printf("\t\tIngrese una opcion : ");
} while ( a != 1 || !( 0 < opcion && opcion < 5) );
return opcion;
}
int main()
{
pedirOpcion();
}
Tienes que combinar las dos cosas y tener en cuenta que el scanf no consume la entrada si no puede detectar el formato que desea. Es decir si vos le pedis un entero y lo primero que encuentra es una letra, esa letra la deja en el buffer y sale con error. Asi que agregue un pequeña linea que vacia el buffer para evcitar ese pegado que vos mencionas. (creo que a eso te referias con pegado)
Saludos