多岐選択はif文でも書くことができます。if文を使って問題5のプログラムを作ると、「season2.c」のようになります。
#include <stdio.h> int main(void) { int month; printf("月を入力してください->"); scanf("%d", &month); if (month >= 3 && month <= 5) { printf("春です\n"); } else if (month >= 6 && month <= 8) { printf("夏です\n"); } else if (month >= 9 && month <= 11) { printf("秋です\n"); } else if (month == 12 || month == 1 || month == 2) { printf("冬です\n"); } else { printf("月が誤っています\n"); } }
次に、「season2.c」のフローチャートを示します。
このフローチャートの通り、条件式は上から下へと順番にif文が評価されていきます。最初の条件は、変数monthが3〜5で、この条件を満たすと「春です」と表示し、以降の処理は行いません。これに対し、monthが最初の条件(3〜5)に当てはまらない場合には、次のif文の条件式の評価へと処理が進みます。
こうしたif文による多岐選択の構造は、「IF-THEN-ELSEIF型」と呼ばれ、プログラミングでよく使われます。
それでは、次回の宿題です。
Copyright © ITmedia, Inc. All Rights Reserved.