В вашем коде будут выполняться следующие два оператора, принимающие ввод из консоли:
scanf("%d",&guess);
...
scanf("%c",&answer);
Когда выполняется scanf("%d",&guess);
, он будет читать число из стандартного ввода, но оставит последний новыйстрока (которую вы должны ввести в буферизованном stdin для завершения ввода) в буфере.Последующие scanf("%c",&answer);
будут сразу же читать в этой новой строке в answer
, не давая пользователю возможности вводить любые дальнейшие буквы.
Пишите ...
scanf(" %c",&answer);
так, чтобылюбой пробел расходуется перед чтением в «фактическом» символе.