求大神告知这套代码中的错误

来源:7-1 编程练习

盖沧海

2017-11-29 11:47

import java.util.Arrays;

public class HelloWorld {

public static void main(String[] args) {

int[]scores= {89,-23,64,91,119,52,73};//定义一个数组保存成绩

System.out.print("考试成绩的前三名为:");

HelloWorld hello=new HelloWorld();//定义对象

hello.Top3(scores);//调用方法保存数组

}

public void Top3(int[]scores){

       Arrays.sort(scores);

       int num=0;

       for(int i=scores.length-1;i>=0&&i<3;i--){

           if(scores[i]<0||scores[i]>100) 

               continue;

           num++;

           System.out.print(scores[i]+" ");

       }

   }

}

写回答 关注

5回答

  • qq_水寒_2
    2017-11-29 13:19:46
    已采纳

    你这个i的赋值是咋回事?数组八个数,初始的i值是7。你的条件是i<3的时候i--。所以就错了


    盖沧海

    非常感谢!

    2017-11-29 14:51:50

    共 1 条回复 >

  • Throb丶
    2017-12-25 17:03:08

    i>=0&&i<3这不矛盾了莫,后面是num<3就对了。

  • 荒mike
    2017-11-30 23:40:24

    i>=0&&i<3   这个的问题  i的条件判断

  • qq_温暖如翊_0
    2017-11-29 16:36:31
    continue,那边是不是少了大括号;。

    盖沧海

    没有就把i<3改成num<3就好了

    2017-11-29 16:41:53

    共 1 条回复 >

  • qq_水寒_2
    2017-11-29 13:21:31

    相当于i一直没有自减

    盖沧海

    不好意思我没注意后面是num<3

    2017-11-29 14:52:50

    共 3 条回复 >

Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1165172 学习 · 17581 问题

查看课程

相似问题