else if の判定の順番
出力はどれか。
public class Main {
public static void main(String[] args) {
int score = 85;
if (score >= 60) {
System.out.println("C");
} else if (score >= 80) {
System.out.println("B");
} else {
System.out.println("D");
}
}
}
- A
C - B
B - C
CB - D
D
正解と解説を見る
正解: A
- A: 上から順に判定し、最初に true になった
score >= 60のブロックだけを実行します。 - B: 85 は先に判定される
score >= 60を満たすので、score >= 80の判定まで進みません。 - C: if / else if は最初に true になった1つのブロックだけを実行します。
- D: 最初の条件が true なので else には進みません。
ポイント
- if / else if は上から順に判定し、最初に true になったブロックだけを実行します。
- 85 は最初の
score >= 60を満たすので C です。条件の書く順番に注意します。
「分岐文 (if、if/else、switch) の使用」をこのサイトで解く (記録・間違えた問題の解き直し・AI教師への質問)