в то время как цикл продолжает печатать и повторяться, что не так с моим getch?

я пытаюсь остановить цикл после ввода y/n, но он просто возвращает печать и запрашивает символ. что здесь не так?

код:

char con='r';

while(con != 'n' || con != 'y')
{
    printf("Would you like to play again? (y/n): ");
    con=getch();
}

person linoiushi    schedule 17.12.2017    source источник
comment
while(con != 'n' || con != 'y') --›› while(con != 'n' && con != 'y') для начала...   -  person wildplasser    schedule 17.12.2017
comment
ой ой спасибо! :)   -  person linoiushi    schedule 17.12.2017


Ответы (1)


Обратите внимание на свое состояние while; Одно из двух условий всегда истинно, поэтому условие while всегда истинно.

Измените его на:

while (con != 'n' && con != 'y')
person Yaniv Shaked    schedule 17.12.2017