大神看看我哪里錯了
public static void main(String[] args) {
int[] nums={89,-23,64,91,119,52};
System.out.println("成績的前三名為");
Arrays.sort(nums);
for(int i=nums.length-1;i>=0;i--){
if(nums[i]>0&&nums[i]<100){
continue;
}
System.out.println(nums[i]);
if(i<nums.length-3){
break;
}
2016-04-06
第一,if條件結(jié)構(gòu),應該為if(nums[i]<0||nums[i]>100),才跳出;
第二,if(i<nums.length-3)不對,不能以數(shù)組的長度來判斷,我們不知道需要幾次,只需要選出符合要求的三個最高成績并排列打印出來就行;
第三,System.out.println(nums[i]);應該放到后面那個if判斷之后,不然循環(huán)一次打印一次。
正確的不用定義方法程序:將你System.out.println("成績的前三名為");之后改為
Arrays.sort(nums);
int count=0;
for(int i=nums.length-1;i>=0;i--){
????????if(nums[i]<0||nums[i]>100){
????????????continue;
????????}
????????????count++;
????????if(count>3){
????????????break;
????????}
System.out.println(nums[i]);
}
2016-04-02
成績在0-100 之間跳出了
2016-04-02
如果你這道題是和這一章的例題一樣的話,那你第一個if應該為
if(nums[i]<0||nums[i]>100)
2016-04-02
&& ?替換成||
2016-04-02
我有導入Arrays的 忘記復制了