我正在努力让这个计划发挥作用。有人可以看一下看看有什么问题吗? (编译器说sum_positive没有以这种方式定义。)另外,我已经搜索了这个问题,并在这里找到了答案,但我没有看到问题,并且当我上交作业时想要避免抄袭。谢谢!
程序:
#include <iostream>
using namespace std;
int main()
{
int number, n = 10, sum_positive = 0, sum_negative = 0, sum = 0;
int count = 0, positive_count = 0, negative_count = 0;
cout << "Please enter in 10 whole numbers, one at a time." << endl;
do
{
cout << "Please enter another number." << endl;
cin >> number;
n--;
}
while (n > 0);
if (number >= 0)
{
sum_positive += number;
//positive_count++; count++;
}
else
{
sum_negative += number;
//negative_count++; count++;
}
sum = sum_positive + sum_negative;
cout << sum_postive << endl;
cout << sum_negative << endl;
cout << sum << endl;
return 0;
}
答案 0 :(得分:0)
你的sum_positive代码中存在拼写错误(cout&lt;&lt; sum_postive&lt;&lt; endl;) - 你写了sum_postive但是你声明了sum_positive。
您正在运行一个循环并在相同的变量号中输入,因此它将覆盖所有输入,并仅存储用户输入的变量号中的最后一个值。因此,您的总和将始终等于用户输入的最后一个值。
为此你需要使用一个数组。 例如:
int number[10], n=10, sum_positive=0;
do{
cout<<"e`enter code here`nter number:";
cin>>number[n];
n--;
}while(n>0);
现在总和也需要使用循环。
如果您不了解阵列,请研究如何使用它。