public class HelloWorld {
//完成 main 方法
public static void main(String[] args) {
int [] scores={89,-23,64,91,119,52,73};
HelloWorld hello=new HelloWorld();
hello.sco(scores);
}
//定义方法完成成绩排序并输出前三名的功能
public void sco(int scores[]){
int score,i,j;
for(i=0;i<scores.length-1;i++){
for(j=i;j<scores.length;j++){
if(scores[j]>scores[i]){
score=scores[i];
scores[i]=scores[j];
scores[j]=score;
}
}
}
System.out.println("前三名为:");
for(i=0,j=0;j<3;i++){
if(scores[i]>=0&&scores[i]<=100){
System.out.println(scores[i]);
j++;
}
}
}
}
//下面的为什么不可以?
/*
public class HelloWorld {
//完成 main 方法
public static void main(String[] args) {
int [] scores={89,-23,64,91,119,52,73};
HelloWorld hello=new HelloWorld();
hello.sco(scores);
}
//定义方法完成成绩排序并输出前三名的功能
public void sco(int scores[]){
int score;//就只是把i,j的声明放在了for循环里面,进行编译就报错,大概是说第二个for里不能使用i,j,为什么
for(int i=0;i<scores.length-1;i++){
for(int j=i;j<scores.length;j++){
if(scores[j]>scores[i]){
score=scores[i];
scores[i]=scores[j];
scores[j]=score;
}
}
}
System.out.println("前三名为:");
for(i=0,j=0;j<3;i++){
if(scores[i]>=0&&scores[i]<=100){
System.out.println(scores[i]);
j++;
}
}
}
}
*/
Caballarii
qq_灵魂深处_1
相关分类