では、サンプルを見てみましょう。
ソースコード源文件
|
---|
実行結果
|
nが1であるとすると、まず文1が実行されます。しかし、break文がないので、switch文を抜けずに、次の文2が実行されます。さらに、文3も実行てしまいます。これでは、何か何だが分からなくなります。しかし、この性質を逆手にとったプログラムも可能です。nが1のときも2のときも同じ処理をする場合はどうでしょうか。
nが1であっても2であっても処理1が実行されます。ユーザーからアルファベットを1文字入力してもらい、この文字により処理を変える場合を考えます。Aと入力をした場合にある処理をするとします。ユーザーが小文字のaを入力してもAのときと同じ処理をさせたほうが親切ですね。
ソースコード源文件
|
---|
実行結果
19 ~ 24行目に注目して下さい。ユーザーがAキーを押してEnterキーを押すと、入力バッファには'A'と'\n'が蓄えられると書きました。そこで、cが'\n'でなくなるまで getchar 関数を呼んでいます。c が'\n' でなくなったらループを抜けて次の処理に移ります。 なお、c = getchar(); の c は int 型の変数です。 Chapter4 @ C言語目録 @ HomeWork List @ 昭亮's Homepage |