慕粉Javacoder
2016-06-03 19:44
//功能:
import java.util.Arrays;
public class HelloWorld {
//完成 main 方法
public static void main(String[] args) {
HelloWorld fuck=new HelloWorld();
int[] scores={89,-23,64,91,119,52};
System.out.println("考试前三名为:");
int[] halo= fuck.sort(scores);
for(int j:halo){
System.out.println(j);
}
}
//定义方法完成成绩排序并输出前三名的功能
public int[] sort(int[] scores ){
int count=0;
Arrays.sort(scores);
//由于遍历从大到小,for循环应从后往前开始遍历
for(int i=scores.length-1;i>=0;i--){
//判断数组中的参数是否有效;即在0-100之间
if(scores[i]<0||scores[i]>100) {
continue;
}
count++;
if(count>3) break;
}
return scores;
}
}
在sort的方法中,对score的每个元素进行了判断是否在0到100内,但是并没有处理这些元素,而是原数组返回。应该再定义一个数组,把前三名的成绩存进这个数组,再返回,或者对score[]重新赋值,前三个元素即为前三名的成绩,再返回。。。
Java入门第一季(IDEA工具)升级版
1165552 学习 · 17587 问题
相似问题