用c ++添加整数

时间:2014-05-15 17:46:39

标签: c++ loops for-loop numbers

我正在尝试用c ++编写一个程序,允许您输入10个数字并使用for循环接收这些数字的总和。但是,我遇到一个问题,我没有得到添加的整数,而是得到最后2个数字的总和。

#include <iostream>
using namespace std;

int main ()
{
    int i;
    int number;

    for(i; i < 10; i++)
    {
        cout << "enter a number" << endl;
        cin >> number;
        if( i < 10)
            number+= number;
    }

    cout << number;
    return 0;
}

4 个答案:

答案 0 :(得分:2)

1)你永远不会初始化i,你应该在for循环中这样做。

for(int i=0; i < 10; ++i)

您也不需要:

if( i < 10 )

因为根据您的for循环条件,这绝不会是false

2)您还需要初始化number

int number = 0;

3)您不应cin直接number,否则您将每次都替换总数。例如,您可以在for循环中执行此操作。

int temp = 0;
cin >> temp;
number += temp;

<强>摘要 如果您更正了上述三个问题,修改后的代码将如下所示:

int main ()
{
    int number = 0;

    for(int i=0; i < 10; ++i)
    {
        cout << "enter a number" << endl;
        int temp = 0;
        cin >> temp;
        number += temp;
    }

    cout << number;
    return 0;
}

答案 1 :(得分:0)

当你写cin >> number;时,你到目前为止正在替换你的金额。您需要将用户输入转换为单独的变量,然后添加它。类似的东西:

for(i = 0; i < 10; i++)
{
    cout << "enter a number" << endl;
    int input;
    cin >> input;
    number += input;
}

答案 2 :(得分:0)

有几件事。在for循环中使用它之前需要初始化我

for(int i=0; i<10; i++)

此外,您使用相同的变量来获取cin中的数字,因为您用来存储总和。您应该使用两个单独的变量。

答案 3 :(得分:0)

以下是要更改的内容列表以及下面稍作修改的工作程序 1.您必须先初始化变量,然后才能以任何有意义的方式使用它们。   初始化意味着分配初始值,但它还要求您声明变量并且它们已正确定义(例如,循环变量未定义为int)   因此,您必须初始化for循环变量i。您还必须通过将数字更改为0来初始化数字
2。为输入和总和使用不同的数字,因为您只需在读取时覆盖任何旧值。请注意,您不需要为此数字指定值,因为您正在将输入流读入其中

    int sum=0,n;//n is input

    for(int i=0; i < 10; i++)
    {
        cout << "enter a number" << endl;
        cin >> n;
        sum+= n;

    }

    cout << sum;