1 #include <stdio.h>
2
3 int main(void)
4 {
5 double temp;
6
7 printf("今の気温は?\t");
8 scanf("%lf",&temp);
9
10 if(temp<-30){
11 printf("極寒です\n");
12 }else if(-30 <= temp && temp < 10){
13 printf("寒いです\n");
14 }else if(10 <= temp && temp < 25){
15 printf("快適です\n");
16 }else if(25 <= temp && temp < 35){
17 printf("暑いです\n");
18 }else{
19 printf("猛暑です\n");
20 }
21
22 return 0;
23 }
書式
if(制御式1){
文1;
文2;
}else if(制御式2){
文3;
文4;
}else if(制御式3){
文5;
文6;
}else{
文7;
文8;
}
|
この構文のフローチャートを,図2に示す.このフローチャートを見てわか るように,最初に真となった制御式に続くブロック内が実行されのみである.それ以降, 真になっても,そのブロックは実行されない.どの制御式も真にならない場合,最後の elseのブロックが実行される.即ち,実行されるブロックは1個のみである. else ifの段数をいくらでも増やせることは,言うまでもない.
また,elseが無い構文も許される.この場合,真となる制御式がない場合,どの ブロックも実行されず,この構文から抜ける.