哪个代码段计算数组中偶数位置中所有元素的总和?
a) int sum = 0;
for (int i = 1; < values.length; i+=2)
{
sum++;
}
b) int sum = 0
for (int i = 0; i < values.length; i++)
{
sum++;
}
c) int sum = 0;
for (int i = 0; i < values.lengthl; i++)
{
sum +=values [i];
}
d) int sum = 0;
for (int i = 0; i < values.length; i + 2)
{
sum +=values [i];
}
这些都是正确的吗?因为我得到了答案
int sum = 0;
for (int i = 0; i < values.length; i += 2)
{
sum +=values [i];
}
我的答案是否正确?或者它是多种选择之一?
答案 0 :(得分:1)
这些答案似乎都没有回答这个问题。这是一个代码片段,它将计算数组values
的所有偶数元素的总和。
int sum = 0;
for (int i = 1; i < values.length; i = i + 2) {
sum +=values [i];
}
您必须将循环变量i
递增2才能仅求和偶数元素。另请注意,我假设第一个偶数位置是数组中的第二个位置,即values[1]
。
答案 1 :(得分:0)
您在代码中使用数组的小修正。 ArrayList
与Array
不同。 ArrayList
没有length
属性,它是Array
的属性。我认为 Tim Biegeieisen 添加的答案对于数组来说是正确的。
类似的,你可以为这样的数组列表做同样的事情 -
int count=0;
int sum=0;
for(Integer i : values){
if(count%2==0){
sum = sum+i;
}
count++;
}
System.out.println(sum);
这里的值是ArrayList
的{{1}}。请注意,您无法在Integer
中添加int
或任何其他原始类型。因此,您可以声明此处使用的ArrayList
(即ArrayList
),例如 -
values
希望它会有所帮助。
感谢。
答案 2 :(得分:0)
A和B不会将数组的元素添加到sum
; B和C处理所有元素。因此,如果它们中的任何一个是正确的,那么它必须是D.但是由于D不会改变i
,它也不是正确的。