我刚开始在大学学习 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/