私はこのプログラムを C で書いていますが、コンパイルするときに大きな問題があります。ユーザーに 21 歳未満かどうかを尋ねる部分に到達したら、答えが「はい」の場合は、それについてさらに質問しますが、コンパイルするときにそれ、プログラムは基本的にそれ自身に答えます。どうすればこのplzを修正できますか? オレンジ色のボックスのスクリーンショットをご覧ください。これらの質問には一切答えていません。 http://i.imgur.com/4H3nl.png
質問する
121 次
5 に答える
1
最初の質問を除いて、各質問の後にユーザーに入力を求めるのを忘れています。scanf("%c", &a);
各質問の後に行うだけです。
于 2012-07-25T19:42:14.847 に答える
0
1 つの scanf() 関数のみが使用されていました。つまり、入力が stdin ストリームから受け入れられるのは 1 回だけです。scanf() の場合、「Enter」を押すと、ストリームが「a」にスタックされます。stdin ストリームは NULL です。そのため、各質問の前に一度 scanf() を使用する必要があります。
于 2012-07-26T03:25:07.347 に答える
0
問題が発生しているブランチで、ユーザーに入力を求めるプロンプトを出すのを忘れています。したがって、ユーザーが最後に与えた回答を再利用しています。
于 2012-07-25T19:41:10.953 に答える
0
a
に入れるユーザー入力を実際に要求せずに、同じ変数 を再利用していますa
。
于 2012-07-25T19:41:26.750 に答える
0
ユーザーから情報を読み取るのは一度だけです。それぞれの前にscanfを実行する必要があります
if (a == 'y')
于 2012-07-25T19:42:02.793 に答える