题目链接:
思路:
(while循环加if分支语句)
巧用死循环 while(1)
然后在里面第一句就判断输入的数字是否等于0 if(x==0) ,如果 等于0就直接break跳出循环
或者用 while(cin>>x)
代码:
#include<bits/stdc++.h>
using namespace std;
int main() {
int sum=0,ans=0;
int x;
while(1) {
cin>>x;
if(x==0) {
break;
} else if(x%2==0) {
sum++;
} else if(x%2==1) {
ans+=x;
}
}
cout<<sum<<endl;
cout<<ans<<endl;
return 0;
}
错误代码:
原因:
不要这种写法,break多香啊
#include<bits/stdc++.h>
using namespace std;
int main() {
int sum=0,ans=0;
int x;
while(cin.get()!=0) {
cin>>x;
if(x%2==0) {
sum++;
} else if(x%2==1) {
ans+=x;
}
}
cout<<sum<<endl;
cout<<ans<<endl;
return 0;
}