问答详情
源自:7-1 编程练习

请大神帮我看下哪错了!谢谢;

import java.util.Arrays;

public class HelloWorld {

    

    //完成 main 方法

    public static void main(String[] args) {

        int[] zong={89 , -23 , 64 , 91 , 119 , 52 , 73};

        System.out.println("考试前三成绩为:");

        HelloWorld hello=new HelloWorld();

        hello.nvsua=(zong);}

   

public   void  nvsua(int[] zong ){

Arrays.sort(zong);

int you=0;

for(int i=zong.length;i>0;i++){

if(zong[i]<0||zong[i]<100){

continue;}

 you++;

if(you==3){break;  

}

System.out.println(zong[i]);}}}

看下那错了?

提问者:qq_妳終究吥属于誐_0 2017-09-15 19:10

个回答

  • 闭关中的菜如狗
    2017-09-18 16:36:58

    if(zong[i]<0||zong[i]<100)

    这个范围也不对.应该是小于0 大于100才会出错.

  • 抓蛙功程狮
    2017-09-15 19:50:05

    for(int i=zong.length;i>0;i++) //这里数组的访问出错了,同时你的数组没有对成绩进行排序。

    要对数组进行排序,然后从后往前(也可以说是从右往左)进行遍历数组的操作。

    for(int i=zong.length-1; i>=0; i--) //这样修改正确,因为从右向左访问数组。 望采纳,祝你编程进步。