c ++中的简单数组求和

Kun*_*ail 2 c++ sum

我是C++的初学者,我有一个关于c ++中简单求和代码的问题.

这是我的代码:

#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;


int main()
{
    int n;
    int sum;
    int arr_i = 0;

    cin >> n;
    vector<int> arr(n);
    while (arr_i != n)
    {
        cin >> arr[arr_i];
        sum += arr[arr_i];
        //cout << sum << endl;
        if (arr_i == n - 1)
            cout << sum;
        arr_i++;
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

在if条件之前没有"cout << sum"的情况下,输出不会打印正确的答案.

我怎么解决这个问题 ?

Jar*_*d42 7

你忘了初始化sum为0.

int sum = 0;
Run Code Online (Sandbox Code Playgroud)