【发布时间】:2017-12-17 16:35:01
【问题描述】:
我正在尝试进行阶乘尾随零练习,但我不断得到数组索引超出范围的错误。需要帮助解决这个问题。谢谢!
import java.util.Scanner;
class Exercise3 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] list = new int [n];
int num = 1;
int div = 5;
int count = 0;
for (int i=0;i<n;i++) {
list[i] = sc.nextInt();
}
for (int i=0;i<num;i++) {
while (list[i] > div) {
count += list[i] / div;
div=div*5;
num++;
}System.out.println(count);
}
}
【问题讨论】:
-
哪一行出现异常,什么输入导致错误?
-
尝试打印出
n的值,看看它说了什么。 -
数组列表有n个元素,但不能保证while循环不会增加num,这将允许i-loop超过n。 - 最好指定程序应该做什么。
标签: java