其实是因为一道题,要求若干学生成绩平均分,而学生有多少个却不知道,用数组的话要定义长度,那么如果定义了100长度,而输入的只有80个学生,那么多出来的20个就不好弄了,有没有什么...
其实是因为一道题,要求若干学生成绩平均分,而学生有多少个却不知道,用数组的话要定义长度,那么如果定义了100长度,而输入的只有80个学生,那么多出来的20个就不好弄了,有没有什么办法使自己输入多少个学生的成绩就算多少个学生的成绩的平均分啊?
我想要文字说明方法即可,不需要具体程序~
import java.util.*;
public class NewClass1 {
public static void main(String[] args) {
System.out.println("请输入学生的数目:");
int num;
Scanner in=new Scanner(System.in);
num=in.nextInt();
int m[]=new int[num];
System.out.println("请输入学生成绩:");
for (int i = 0; i < num;i++ )
m[i] = in.nextInt();
System.out.println("刚才输入的学生的成绩为:");
for(int i=0;i<5;i++)
System.out.print(m[i]);
int sum=0;
for (int i=0; i<5; i++)
sum+=m[i];
System.out.println("\n学生的平均成绩是:"+sum/5);
}
}
看看我刚才编的这个程序,运行没有问题,可以自行输入需要的学生数目,但是运行到把成绩导出后,后面计算总成绩和平均分就不显示了
显示的错误是:Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3
Java Result: 1
这是一个数组越界问题啊,我现在把i初始化为args.length就行了,为什么啊
list是什么啊,怎么用啊?
展开