K3nshin 0 Denunciar post Postado Agosto 14, 2008 Pessoal preciso de uma ajuda no codigo abaixo : #include<stdio.h> #include<stdlib.h> void menu(); main() { menu(); } void menu() { char opcao; int valor; do { valor = 0; printf("\tMenu\n\n"); printf("\t[H] Homem\n"); printf("\t[M] Mulher\n"); printf("Opcao : "); scanf (" %c",&opcao); if ((opcao != 'H') && (opcao != 'h') && (opcao != 'M') && (opcao != 'm')) { system("cls"); printf("Invalido\n\n"); valor = 1; system("pause"); system("cls"); } } while (valor !=0); system("pause"); } Na hora de comoilar esse codigo se eu digitar por exemplo o valor 645ddd ele mostra 6 vezes a tela de opcao invalida , gostaria de limitar a variavel opção, o usuario ficaria bloqueado a digitar somente um caracter no CHAR opcao. Alguem pode me dar uma ajuda ^^ http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
IvanR 0 Denunciar post Postado Agosto 14, 2008 #include<stdio.h> #include<stdlib.h> #include<conio.h> void menu(); main() { menu(); } void menu() { char opcao; int valor; do { valor = 0; printf("\tMenu\n\n"); printf("\t[H] Homem\n"); printf("\t[M] Mulher\n"); printf("Opcao : "); opcao = getche(); if ((opcao != 'H') && (opcao != 'h') && (opcao != 'M') && (opcao != 'm')) { system("cls"); printf("Invalido\n\n"); valor = 1; system("pause"); system("cls"); } } while (valor !=0); system("pause"); } Compartilhar este post Link para o post Compartilhar em outros sites
K3nshin 0 Denunciar post Postado Agosto 14, 2008 Valeu muito obrigado ^^ , não conhecia esse comando =/ Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Agosto 14, 2008 é o getche(); pega qlqr tecla q o usuario digitar. Compartilhar este post Link para o post Compartilhar em outros sites