import java.awt.*;   
import java.applet.*;   
  
public class c3_6 extends Applet {   
    public void paint(Graphics g) {   
        int k;   
        int grade = 86;   
        k = grade / 10;   
        switch (k) {   
        case 10:   
        case 9:   
            g.drawString("成绩:优", 25, 25);   
            break;   
        case 8:   
        case 7:   
            g.drawString("成绩:良", 25, 25);   
            break;   
        case 6:   
            g.drawString("成绩:及格。", 25, 25);   
            break;   
        default:   
            g.drawString("成绩:不及格。", 25, 25);   
        }   
    }   
}  看答案,。int 86/10=7,我认为应该是等于8,这是为什么?

解决方案 »

  1.   

    是8 但是你case8 没有break  switch会继续往下执行 知道结束或者遇到break 所以8执行了就往下执行到7就break了 你可以试试在case 8 里面print一个值
      

  2.   

    8和7的处理不都是一样的么:g.drawString("成绩:良", 25, 25); break; 
      

  3.   

    懂了,还是自己不仔细,把其他编程语言case用法套用在了java上。-_-