Dzień dobry,
podczas w moim kodzie występuje błąd, ponieważ podczas switcha przy pierwszym błędnym wpisaniu opcji pojawia się poprawny komunikat(nieznane polecenie ...), niestety kiedy podana opcja jest poprawna, a po niej nastąpi błędna(chodzi mi tu o wpisanie liter zamiast liczb, przy liczbach działa jak powinno) to zamiast komunikatu o błędzie wykonuje się ostania poprawna wpisana opcja(np. wpisuje 2(wykonuje sie instrukcja), potem np "asd" i zamiast komunikatu nieznane polecenie wykonuje się instrukcja dla opcji 2). Instrukcje w switch usunalem bo sa raczej nieistotne. Dodaje funkcje usuwania buforu, moze to z nia jest cos nie tak? Z góry dziękuje za pomoc :)
int main(){
menuSekwencji();
int numer ;
while( 5 != numer ){
scanf("%d", &numer);
czyscBuf();
switch(numer){
case 1:
break;
case 2:
break;
case 3:
break;
case 4:
puts("4.");
break;
case 5:
puts( "Koniec programu." );
break;
default:
puts("Nieznane polecenie, wpisz numer jescze raz.");
getchar();
break;
}
menuSekwencji();
}
return 0;
}
void czyscBuf(void){
while ( getchar() != '\n' );
}