這是很奇怪的,但下面是我的case語句:案件陳述輸出不正確?
switch($grade){
case ($average >70):
$grade = 'A';
break;
case ($average >=60 && $average <=69):
$grade = 'B';
break;
case ($average >=50 && $average <=59):
$grade = 'C';
break;
};
所以,如果它的70+是A級,60-69級B,50-59級C.
而是將其輸出這個:60+等級A,50-59等級B,40-49等級C.
爲什麼這樣做是因爲功能看起來正確?
echo "<p><strong>Average Mark:</strong> $average</p>";
echo "<p><strong>Average Grade:</strong> $grade</p>";
開關的情況下工作得非常不同於IF-elseif-否則,這是你在這裏要做的。 – BoltClock
比較不同於你開啓的變量可能會導致'SAN'損壞(不要這麼做)。範圍檢查通常以下限包含,上限排他(所以,「$ average> = 60 && $ average <70」)來執行。如果「$ average」是_exactly_70,會發生什麼?你的'默認'情況在哪裏? –