c++ - 在C++中将数组中的所有数字相加

标签 c++ arrays loops sum

我刚开始在大学学习 C++,我的任务是执行以下操作:我必须编写一些代码,使用迭代(即循环)来计算整数数组中各项的累积和; 我的代码是:

int main() {
    int myArray[] = {1,2,3,4,5};
    int i;
    int j;
    j+= myArray[]; 
    for(i=0;i<5;i++){
    printf("%d\n",myArray[j]);
  }
}    

虽然这段代码没有产生我正在寻找的东西,但我对下一步应该做什么感到困惑。

最佳答案

int main() {
    int myArray[] = {1,2,3,4,5};
    int sum = 0;
    for(int i=0; i<5; i++)
        sum += myArray[i] ;

    std::cout << sum;   
}

这里 sum 被初始化为 0,数组中的每个元素都被添加到循环中的 sum

您可以使用 std::accumulate 来做同样的事情,因此您不必担心数组的大小。

#include <iostream>
#include <algorithm>

int main() {
    int myArray[] = {1,2,3,4,5};
    std::cout << std::accumulate(std::begin(myArray), std::end(myArray), 0);
} 

请注意,std::begin()std::end() 是在 C++11 中引入的。对于早期版本,您将不得不改用指针:

std::accumulate(myArray, myArray + 5, 0);

关于c++ - 在C++中将数组中的所有数字相加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36880146/

相关文章:

c++ - C++中的前向声明

c++ - Symbian:是否可以通过应用程序访问联系人列表?

java - 使用 while 循环迭代字符串数组并获取位置 java

Python:在外循环中继续下一次迭代

java - 在变量中使用变量?

c++ - 找到质数的最佳方法是什么?

c++ - 如何为 LookAt 转换获取正确的 Up vector ?

python - 按列值将 CSV 文件分类为不同的 CSV

arrays - 具有包含引用的可能变体的枚举数组

java - for 循环到 while 循环