为了账号安全,请及时绑定邮箱和手机立即绑定

请问哪里出现问题了·····

import java.util.Arrays;
public class HelloWorld {
   
    //完成 main 方法
    public static void main(String[] args) {
      int[] scores={89,-23,64,91,119,52,73};
      HelloWorld hello=new HelloWorld();
      hello.threeHigh(scores);
     
    }
   
    //定义方法完成成绩排序并输出前三名的功能
    public void threeHigh(int[] scores){
       
        Arrays.sort(scores);
        int count=0;
        for(int i=scores.length-1;i>=0;i--){
            if(scores[i]<0 || scores[i]>100 ) {  continue;  }
          
                count++;
        
           
            if(count>=2){
                break;
            }
            System.out.println(scores[i]);}
        }
    }
   
   

正在回答

6 回答

if(count>=2)这句,当count=1,条件为假,执行输出打印91,然后循环,count=2,条件为真,执行break,程序结束.没有机会执行输出打印了.

0 回复 有任何疑惑可以回复我~
#1

LL0816 提问者

嗯,是这样的,count>3才对。非常感谢!
2016-04-11 回复 有任何疑惑可以回复我~

是照着老师给的代码做的,还是运行不出来,试了下其他同学的代码也没有运行出来···

0 回复 有任何疑惑可以回复我~

count 应该是>3,才跳出循环

0 回复 有任何疑惑可以回复我~

觉得最好应该是排序好自后向前输出不大于100的项,同时下标前移,设置计数器,这样没什么问题吧.....

0 回复 有任何疑惑可以回复我~

你的main方法里面没有输出

0 回复 有任何疑惑可以回复我~

同学你得先按大小排序然后再删除不合格的成绩


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

请问哪里出现问题了·····

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信