为什么我的CalcOddIntegers方法总是返回零?



该方法应该接受用户输入的数组长度,然后是作为数组一部分的整数,并返回数组中奇数的数量。然而,对于奇数的计数,它总是返回零,我不确定为什么。扫描器是在这个方法之外声明的。


System.out.print("Enter length of sequencen");
int length = console.nextInt();
int[] array = new int[length];
System.out.print("Enter the sequence: n");
int count = 0;
int i = 0;
for (i = 0; i < length; i++) {
array[i] = console.nextInt();
}
for (i = 0; i < length -1; i++); {
if (array[i] % 2 != 0) {
count++;
}
}
System.out.printf("The count of odd integers in the sequence is %dn", count);
}

控制台示例:

2. Calculate the factorial of a given number
3. Calculate the amount of odd integers in a given sequence
4. Display the leftmost digit of a given number
5. Calculate the greatest common divisor of two given integers
6. Quit

3
Enter length of sequence
4
Enter the sequence: 
1
2
3
4
The count of odd integers in the sequence is 0

我试着用不同的变量来试验for语句,看看是否有什么冲突,但没有任何效果。

删除

行中的分号(;)

for (i = 0;我& lt;长度1;
分号终止循环,因此假定您的行什么都不做。

在第二个for之后有一个不应该在那里的分号。语法在技术上是正确的,然而,没有什么要执行的,所以检查奇数的块将只执行一次。我建议使用调试器,它将帮助您更容易地排除问题。

相关内容

  • 没有找到相关文章

最新更新