#include <iostream>
using namespace std;
int main()
{
int howmany;
int i=0;
cout <<"How many integers you want to add,just enter the number.\n";
cin >> howmany;
while (i < howmany)
{
int sum = 0;
sum = sum +i;
i++;
cout << sum << endl;
}
system ("pause");
return 0;
}
错误是什么?它给出了数字列表而不是它们的总和。我试图改变循环体中语句的顺序,但仍然没有解决问题。
答案 0 :(得分:1)
在循环外初始化sum=0
。因为在每次循环时代码中,变量sum
都设置为0
。
像这样改变
int sum = 0;
while (i < howmany)
{
sum = sum +i;
i++;
cout << sum << endl;
}
答案 1 :(得分:0)
在循环外面声明sum变量。
或者
你可以在循环内声明一个静态变量(静态变量会 初始化一次)
int main()
{
int howmany;
int i=0;
cout <<"How many integers you want to add,just enter the number.\n";
cin >> howmany;
int sum = 0; //Declare here
while (i < howmany)
{
sum = sum +i;
i++;
}
//Display the result after the while loop.
cout << sum << endl;
system ("pause");
return 0;
}