очистить входной поток

можно просто чистя его каждый раз, когда мы хотите считать символ вызывая после getchar() конструкцию while (getchar() != '\n'); - соответственно, если пользователь введёт более оного символа - то всё лишнее вместе с символом перевода строки будет убрано из потока ввода - такой способ соответствует стандартам и вполне переносим с одной платформы на другую.

Comments

vedro-compota's picture

для этого дела можно даже завести такую вот маленькую функцию =

int inputcl(void)
{
   printf("\n[%s]\n", "If nothing take place - press enter to continue the program execution.");
   while (getchar() != '\n'); /*remove \n  or other useless data*/
   
   return 0;
}

_____________
матфак вгу и остальная классика =)