チェックがchar型の次のコードがあります
do{
printf("Do you want to add an edge(n to stop adding)\n");
check = getchar();
}while(check!='n');
と
do{
printf("Do you want to add an edge(n to stop adding)\n");
scanf("%c",&check);
}while(check!='n');
どちらも同じ出力を生成します
たとえば、r\nの場合はDo you want to add a edgeを 2 回取得し、たとえばtt\nの場合は同じ質問を 3 回取得した後、入力を求めます。
私の質問は、それを回避する方法と、なぜそれが起こっているのですか?