¿Cómo vaciar el búfer de la consola?

Tengo un código que se ejecuta repetidamente:

printf ("¿quieres continuar? S / N: \ n");
keepplaying = getchar ();

en el siguiente mi código se está ejecutando no espera entrada. descubrí que getchar en el segundo tiempo usa '\ n' como el carácter. Estoy molesto porque esto se debe al búfer que tiene el sdio, por lo que guarda la última entrada que fue "Y \ n" o "N \ n".

mi Q es, ¿cómo puedo vaciar el búfer antes de usar getchar, lo que hará que getchar espere mi respuesta?

Respuestas a la pregunta(2)

Su respuesta a la pregunta