コンソールからいくつかの数字を読みたい。数字は、このように表示されます -コンソールから番号を入力する方法
5 1 2 3 4 5
4 5 6 7 8
6 2 3 4 5 6 7
..............
EOF
始まる番号が最初の行の最初の数が5である、すなわち、その行に表示されますので、このライン上の5つの以上の数字があるでしょうどのように多くの数を表し。入力の終了は、EOF(ファイルの終わり)で示されます。
私は行全体を文字列として読んで数値に変換することを考えましたが、これを行う方法は他にあります。
for-loop内でscanfの戻り値をテストしています。 –
また、そうしなければならないときに、行末に達したかどうかを知る方法もありません。 'scanf()'は早期に発生する改行を受け取り、遅れて発生する改行を無視します。データ '1 1 3/1 2'(スラッシュは改行)の場合、最初の行は 'OK'(1ではなく2つの値を含んでいても)であり、3はカウントとして解釈されます2番目の行には2つの値しかありません。このため、 'scanf()'がまったく正しい関数であるとは限りません。 (私は以前の25年間のプログラミングで持っていたよりも、 'scanf()'を使っていました!) –
@Neil Butterworth:質問には言及されていないので追加しませんでしたが、OPはできます必要であれば、彼は 'scanf'文書を読んでください。 –