>>919 >「y」と「改行」を入力したでしょう。別に勝手に入るわけじゃない。 え、でもscanfで1文字標準入力を取得した後、 returnでmain関数に戻って、もう一度ifでMesssage関数を呼び出してるから たとえ、改行文字があっても無視されるんじゃないんですか? それにこのプログラムが意図したと売りに動く場合の、 一度目にenterおしてifでMessage関数呼び出して、2度目のifでMesssage関数 を呼び出してyを入力した場合、 huga$ ./a.out question Push Enter> How do you do? y/n>y good の場合はHow do you do? y/nでyとenterを押しているのに なんで正確に動くんですか? もしかして標準入力の内容ってバッファみたいなところに貯められるんですか? >>921 自分は886では無いですよ。 少なくともコンパイルエラーを直してから、質問します。