Olá, você poderia usar o 'While' ou o 'Do while' para criticar a entrada da variavel nivel.
por exemplo usando o 'do while' (eu acho mais coveniente pois com 'do while' ele realiza pelo menos a primeira entrada antes de verificar);
int nivel;
do{
scanf("%d", &nivel);
}while(!(nivel >= 1 && nivel <=3));
// poderia ser assim tambem a condição while(nivel < 1 || nivel > 3);
// ou assim while( nivel != 1 && nivel != 2 && nivel != 3);
eu costumo fazer negando a condição valida que neste caso é um numero de 1 a 3 inclusive, ai como eu nego se ele entrar com um valor invalido, o do while faz repetir novamente a entrada, até que ele entre com um valor valido.
deixei alguns exemplos comentados pois tenho alunos que tem muita duvida da maneira negando como eu gosto hehe.
se isso é resolvido no decorrer do curso não sei dizer, pois não realizei o curso, sou monitor de algortimos na minha facul.
mas deve ser sim : ). Se não for você ia acabar descobrindo sozinho algum modo de acordo com o que vai aprendendo.