class SoreLevel
{
    public static void main(String args[])
  {
    int TestScore=97,Level;
    int  Grade;
    Level = TestScore/10;
    switch(Level)
    {
      case 10:
      case 9: Grade='A';break;
      case 8: Grade='B';break;
      case 7: Grade='C';break;
      case 6: Grade='D';break;
      case 5:
      case 4:
      case 3:
      case 2:
      case 1:
      case 0: Grade='F';break;
    }
     System.out.println(TestScore+"  is  " + Grade +"\n");
  }
}
     和书上一样可为什么就这么多的问题。请各位看看。谢谢!!

解决方案 »

  1.   

    javac ScoreLevel.java
    java ScoreLevel
    是不是这两步有错啊..帖上错误来..
      

  2.   

    应该是这样的..你用了SWITCH,可能出现结果不在选项中..那么Grade就没有赋值了.
    改这里,就OK了:int  Grade=0;
      

  3.   

    按照你的意思,是不是这样
    char Grade;
      

  4.   

    如果你用这样int  Grade=0;的话
    输出就不是A了,而是65
    class SoreLevel
    {
        public static void main(String args[])
      {
        int TestScore=97,Level;
        String  Grade="";
        Level = TestScore/10;
        switch(Level)
        {
          case 10:
          case 9: Grade="A";break;
          case 8: Grade="B";break;
          case 7: Grade="C";break;
          case 6: Grade="D";break;
          case 5:
          case 4:
          case 3:
          case 2:
          case 1:
          case 0: Grade="F";break;
        }
         System.out.println(TestScore+"  is  " + Grade +"\n");
      }
    }这样改后就输出A了