Bom pessoa, estou aprendendo C agora e estou com uma dúvida.
Estou querendo fazer uma confirmação, ele tem que repetir todo o código do início caso o usuário digite a opção "Não" no final.
Estou baseando a lógica no exemplo abaixo:
char nome[31], yn;
int loop;
/do {
system("cls");
printf(" Digite seu nome: ");
gets(nome);
printf(" Seu nome e: %s \n\n", nome);
printf(" Seu nome esta correto? (Y/N): ");
scanf(" %c", yn);
if ((yn==78) || (yn==110)) loop=1; else loop=0;
} while (loop==1);
Resumidamente, o que eu quero é: Se o cabra digitar que o "Nome" está incorreto, ele consiga digitar NOVAMENTE...
Não posso utilizar o goto. Preciso fazer com algo diferente.
Estou recebendo o erro e o fechamento do cmd.
Que faço? Sei que estou errando, mas onde?
EDITANDO:
Tentei assim também:
[code]main () {
char nome[31], yn;
int loop;
system("cls");
printf(" Digite seu nome: ");
gets(nome);
printf(" Seu nome e: %s", nome);
if (NomeCHK()==1) return(0);
if (NomeCHK()==0) main();
system("pause");
exit(0);
}
int NomeCHK () {
char check;
printf("\n\n Seu nome esta correto? (Y/N): ");
scanf(" %c", check);
printf("\n\n");
switch (check) {
case 'Y': case 'y': return 0; break;
case 'N': case 'n': return 1; break;
default: printf("Digite apenas Y ou N.\n");
}
}
Pergunta
iMorilon
Bom pessoa, estou aprendendo C agora e estou com uma dúvida.
Estou querendo fazer uma confirmação, ele tem que repetir todo o código do início caso o usuário digite a opção "Não" no final.
Estou baseando a lógica no exemplo abaixo:
Resumidamente, o que eu quero é: Se o cabra digitar que o "Nome" está incorreto, ele consiga digitar NOVAMENTE... Não posso utilizar o goto. Preciso fazer com algo diferente. Estou recebendo o erro e o fechamento do cmd. Que faço? Sei que estou errando, mas onde? EDITANDO: Tentei assim também: Editado por iMorilonLink para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.