[英]Loop only executes once C++
我正在尝试编写一个程序,该程序读取10个整数,然后使用for循环查找并打印偶数和奇数整数的和。
我看到For循环的以前的帖子执行了一次,但它们没有帮助我。 谢谢你的帮助。
这是我的代码,
#include <iostream>
using namespace std;
int main()
{
int integer;
int even = 0;
int odd = 0;
int intcount = 0;
cout << "enter numbers" << endl;
cin >> integer;
for(; intcount <= 10; intcount++)
{
if((integer % 2) == 0)
{
even = even + integer;
}
else if((integer % 2) != 0)
{
odd = odd + integer;
}
}
cout << "Even sum: " << even << endl;
cout << "Odd sum: " << odd << endl;
return 0;
}
cout<<"enter numbers"<<endl;
for(; intcount < 10; intcount++) // '< 10', not '<= 10' as you start with 0
{
cin>>integer; // <-- you should read numbers inside the loop
if(integer % 2 == 0 )
{
even += integer; // += is the same as 'even = even + integer'
}
else // no 'else if' needed, 'else' is enough
{
odd += integer;
}
}
cout<< "Even sum: " << even<< endl;
cout<< "Odd sum: " << odd<< endl;
最好使用带有退出条件的while
循环并更改如下代码:
while(1)
{
cout<<"Enter 0 to exit"<<endl;
cin>>integer; // <-- you should read numbers inside the loop
if( integer == 0 )
break;
else if(integer % 2 == 0 )
{
even += integer; // += is the same as 'even = even + integer'
}
else
{
odd += integer;
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.