在偶数索引处添加元素

时间:2017-09-19 15:02:14

标签: c++ arrays

现在我需要编写一个程序,在数组的偶数索引处添加元素(索引:0,2,4,6等)。我写了代码,它看起来很合理,但由于某种原因,我得不到正确的结果。任何想法/提示都表示赞赏,因为我知道这是我想念的小事。谢谢大家!

#include <iostream>

int main() {

    int i;
    int arr[] = {1,3,2,4,5,6,2};
    int size = 7;
    int sum = 0;

    //For loop to loop through the array
    for(i = 0; i < size; i++) {
        //If the index modulus 2 is 0 (even number) add that number to the sum
        if(arr[i] %2 ==0){
            sum += arr[i];
        }
    }
    //Printing out the sum of the even indexes elements
    printf("%d",sum);
}

3 个答案:

答案 0 :(得分:3)

if条件应该使用i而不是arr[i],因为你甚至想要索引甚至不是值

答案 1 :(得分:1)

代码中数组的索引仅为i。您正在获取存储在数组的i元素中的值的模数。

尝试:

if(i % 2 == 0) {

答案 2 :(得分:0)

如果您写arr[i],则表示您要处理数组iarr[]位置上的元素。例如,如果您说arr[0](对于i = 0),则表示1的值为arrayindex值如i中所述。因此,如果您想使用index,请仅使用iarr[i]。要检查index是否均匀,您可以按照以下方式执行此操作:

if(i % 2 == 0)