哪里有问题列。。

来源:7-1 编程练习

qq_岚风依旧_0

2015-01-28 13:49

import java.util.Arrays;

public class HelloWorld {

    

    //完成 main 方法

    public static void main(String[] args) {

       int [] scores={89,-23,64,91,119,52,73};

        HelloWorld hello=new HelloWorld();

        hello.nima(scores);     

    System.out.println("考试成绩前三名为:");    

        

    }

    

    //定义方法完成成绩排序并输出前三名的功能

    public int nima(int [] scores){

        for(i=scores.length-1;i>=0;i--){

            if(scores[i]>100||scores[i]<0){

                continue;

            }

        int j=0;

            j++;

        if(j<=3){

        System.out.println(scores[i]);

        }

        }

    }

    

    

    

    

    

    

    

    

    

}

错误:

error: cannot find symbol
for(i=scores.length-1;i>=0;i--){
^
symbol: variable i
location: class HelloWorld
error: cannot find symbol
for(i=scores.length-1;i>=0;i--){
^
symbol: variable i
location: class HelloWorld
error: cannot find symbol
for(i=scores.length-1;i>=0;i--){
^
symbol: variable i
location: class HelloWorld
error: cannot find symbol
if(scores[i]>100||scores[i]<0){
^
symbol: variable i
location: class HelloWorld
error: cannot find symbol
if(scores[i]>100||scores[i]<0){
^
symbol: variable i
location: class HelloWorld
error: cannot find symbol
System.out.println(scores[i]);
^
symbol: variable i
location: class HelloWorld
6 errors

写回答 关注

3回答

  • yymooc
    2015-01-28 16:13:20
    已采纳

    恩恩,是要改成void因为在nima方法中没有返回值,所以要定义成void,如果不是void类型的话,最后要有返回值return的。

    qq_岚风依...

    非常感谢!

    2015-01-31 17:23:33

    共 1 条回复 >

  • _Exception
    2015-01-28 15:43:34

    public static void main(String[] args) {

            int[] scores = { 89, -23, 64, 91, 119, 52, 73 };

            HelloWorld hello = new HelloWorld();

            hello.nima(scores);

        }


        // 定义方法完成成绩排序并输出前三名的功能

        public void nima(int[] scores) {

            Arrays.sort(scores);//  排序

            for(int i = scores.length-1 ;i>scores.length-4;i--){

                System.out.println("成绩前三名 : "+scores[i]);

            }

        }

    定义成 void 是没有返回值 , 不定义成 void 的话 , 就要返回值 , 还要定义返回值类型 , 最后还要 return 值 , 前面调用方法那里还要定义变量接收 , 具体可以看看定义方法定义的介绍 , 有静态(static)的和非静态的 , 

  • yymooc
    2015-01-28 14:21:34

    int j=0不能定义在for循环里面,for(int i=scores.length-1;i>=0;i--)中i是int类型的,你没有定义类型啊,

    System.out.println(scores[i]);输出语句应在if语句的外面,而且if语句应该是if(i>3)

    yymooc 回复qq_岚风依...

    恩恩,是要改成void因为在nima方法中没有返回值,所以要定义成void,如果不是void类型的话,最后要有返回值return的。

    2015-01-28 16:11:59

    共 3 条回复 >

Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1165550 学习 · 17586 问题

查看课程

相似问题