帮我看下哪里错了
这个代码对照了下标准答案,除了方法名不一样,其他都按标准答案填了,但还是报错,求看看错在哪里
2015-07-03
首先,这样写fou循环中不会执行任何东西。因为if中continue,后面的代码会自动跳过,执行下一次for循环。
然后。int num=0;写在 for循环中每次都会循环执行。所以num永远等于0.sort排序由小到大进行排序,所以输出的结果为成绩最小的三位。正确的为:
public static void top(int[] scores){
Arrays.sort(scores);//排序
int num =0;
for(int i=scores.length-1;i>0;i--){
if(scores[i]<0||scores[i]>100){
continue;
}
num++;
if (num>3){
break;
}
System.out.println(scores[i]);
}
}
package cn.edu.zafu;
import java.util.Arrays;
public class llll {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] scores={1,2,5,6,3};
Arrays.sort(scores);//排序
for(int i=0;i<scores.length;i++)
{
if(scores[i]<0||scores[i]>100)
{
continue;
}
int num=0;
num++;
if(num>3)
{
break;
}
System.out.println(scores[i]);
}
}
这样。。
举报