Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia amigos
No curso eu aprendi a fazer menus com do{}while, ou while{}, eu vi em algum livro, que não lembro o nome, o autor utilizava for( ; ; ) vazio mesmo para criar menus infinitos ate que alguma condição fizesse parar.
Qual a forma mais correta de criar um menu?
Switch - case -> Para ir para as opções
Para ficar sempre lendo as opções tanto faz se tu fizer com um for vazio ou um while(1). Da na mesma, fica num loop infinito igual.
Flw
Prefira sempre for( ; ; ) a while(1), além do while(1) ser mais lento que for( ; ; ) em compiladores antigos, é bem feio de escrever xD
Hein, sempre que faço menu faço assim:
for(;;)
{
int opcao;
printf("1 - opt1\n2 - opt2\n3 - opt3\nResposta: ");
scanf(" %d", &opcao);
switch(opcao)
{
case 1:
do_something();
break;
case 2:
do_something2();
break;
case 3:
do_something3();
break;
default:
continue;
}
break;
}
Acho que é o modo mais razoável... No default você pode colocar tipo um cls() do windows ou um clear() do linux para limpar a tela e fazer a pergunta de novo, fica mais bonitinho, antes do continue. Aí vai parecer que só limpou a sua resposta, mas na verdade escreveu tudo de novo...
Abraços :D
Então Renato desde que eu vi no livro eu faço dessa forma achei mais legal do que usar while ou do while mas sempre tive essa curiosidade em saber se era correto ou o que o pessoal mais usa, agora esclareceu, valeu kra agradeço a ajuda :thumbsup:
Pois é, eu utilizava o do-while, mas eu descobri esse modo após um pouco de experiência e vi que é o melhor...
Podem existir outros, mas pra mim esse é o mais eficiente...
Abraços :D
Bom Dia,
Se eu entendi a pergunta, eu sempre fiz com switch case