はじめて掲示板を使うので失礼があったらすみません。
do while文を用いて、cが入力されるまでprintf("1文字入力して下さい:");とscanf("%c",&input);が繰り返される処理を行いたいのですが、
c以外の文字を入力したときに「1文字入力して下さい:」が以下の実行結果のように、1つ余分に出てきてしまいます。
この余分に出てくるのを防ぎたいのですが、どのようにすればよいですか?
[実行結果]
1文字入力して下さい:a
1文字入力して下さい:1文字入力して下さい:c
cが入力されました
コード:
#include <stdio.h>
int main(void){
char input;
do {
printf("1文字入力して下さい:");
scanf("%c", &input);
} while (input != 'c');
printf("cが入力されました\n");
return 0;
}