C ++输出错误。使用数组和总和

时间:2016-02-01 04:14:25

标签: arrays

我正在尝试将此数组中从.txt文件中读取的所有数字相加。我不断得到一个不是总和的数字......请帮忙。

#include <iostream>
#include <fstream>

using namespace std; 

int main()
{
    ifstream inFile;
    inFile.open("program3.txt"); 
    int size; 
    int sum = 0; 
    inFile >> size; 
    //cout << size << endl; 
    int myArray[size]; 

    for (int i = 0; i <= size; i++)
    {
        inFile >> myArray[i]; 
        sum = sum + myArray[i]; 
    }

    for (int i = 0; i < size; i++)
    {
        cout << myArray[i] << endl; 
    }
    cout << sum; 
    inFile.close(); 
    return 0; 

这是带有数字的.txt文件。第一个数字是文件中元素的数量,不应计入数字之和。

30
5
9
12
25
847
52
35
62
4
413
82
64
258
35
613
644
21
0
542
-5
9
5
4
2
88
24
26
5
24
55

1 个答案:

答案 0 :(得分:0)

你的for循环我从0到i&lt; = size。这意味着我从0到30,或31个值。将其改为i&lt;大小,以便计算30个值,应该解决您的问题。