はじめての C
「対話型入力」
対話式入力、つまり データを 直接 ユーザが 入力することで 知られている方法は、落ちかけてる橋を 歩いて 渡るようなものです。
というのも、ユーザというのは けっこう いきあたり ばったりなので、連中が しでかすであろう 考えられる限りの 誤操作 - mistake - に 対処できる コードを 簡単明解に 実装するのが 困難だからです。
C で、一般的な 入力方法の 手順を使って、それを やりとげるのは、まったく 楽では ありません。
実際、C では もっとも 標準的な、scanf を 使用して 入力する やり方では、堅牢なコードを 書くのは むずかしく、信頼できないのです。
なぜなら、それは 自在 - flexible - で 複雑に すぎるからです。
書式付入力 - formatted input - でのみの 使用が 奨励されているにも かかわらず、プログラマというのは、ユーザからの 入力に、書式付以外の どれかで scanf を 使う 必要性を 感じています。
このことは、一直線に、問題のある プログラムへと 通じ、さらに 悪い方向に 陥ることに なります。 scanf は、エラーが 発生すると、 それを 正常に戻すのが 困難な、評判のよくない 関数だからです。
scanf の 通常の 使用方法は、数 - numbers - を 直接、値に 読み込むことです。
int var;
scanf("%d ", &var);