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

这样做也没有错,为什么一定要排除负数成绩呢?排完序之后前三个一定大于0,只输出前三个就好了鸭!

 //完成 main 方法
    public static void main(String[] args) {
        int [] a={89,-23,64,91,119,52,73};
        HelloWorld h=new HelloWorld();
        int [] b=h.sor(a);
        System.out.print(b [0]+","+b [1]+","+b [2]);
    }
    //定义方法完成成绩排序并输出前三名的功能
    int [] sor(int [] a){
        for(int i=0;i<a.length;i++){
            for(int j=0;j<a.length-1-i;j++){
                if(a[j]<a[j+1]){
                    a[j]=a[j]^a[j+1];
                    a[j+1]=a[j]^a[j+1];
                    a[j]=a[j]^a[j+1];
                }
            }
        }
        return a;
    }

提问者:碎月尘星 2019-03-23 11:20

个回答

  • 3y20w
    2019-03-24 15:50:35
    已采纳

    杠精上身: 120分考试,考试卷面不整洁,扣分为负。

  • 慕粉6281325
    2019-03-23 13:20:24

    有效值是0到100,排第一的119无效,不需要输出。

    还有数组排序可以不用自己定义。

    import java.util.Arrays; //然后直接调用就行

    Arrays.sort(scores);