这是我的代码。请检查它给运行时异常的位置。我写了一段代码来解决这个问题。
我一直在获取NZEC(运行时错误),但是我找不到代码的哪一部分会引起任何异常,因为它仅涉及简单的算术计算(应该没有被零除的机会)。
代码的逻辑无关紧要,我只是想知道异常可能隐藏在哪里。
任何人都可以发现任何错误吗?谢谢。
import java.io.BufferedReader;
import java.io.File; // headers
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.math.BigInteger;
import java.util.Arrays;
import java.util.Scanner;
import java.util.Vector;
import java.math.BigInteger;
public class Mkequal // class
{
public static void main(String[] args) throws IOException // main class
{
BufferedReader br = new BufferedReader(new InputStreamReader(System. in));
Scanner sc = new Scanner(System. in );
int t = Integer.parseInt(br.readLine());
while (t-- > 0) // while loop
{
int sum = 0;
int n = Integer.parseInt(br.readLine()); //number of elements in array
int arr[] = new int[n];
for (int i = 0; i < n; i++)
arr[i] = sc.nextInt();
for (int i = 0; i < n; i++)
sum += arr[i];
if (sum % n == 0) //if divisible by n,print n
System.out.println(n);
else
System.out.println(n - 1);
}
}
}
您很可能在程序中创建了太多的内存。您必须在while循环外创建array(arr)并在循环内对其进行操作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句