小爱设计了一个数字游戏,要求把看到的一串数字(长度不一定,以 0 结束,最多不超过 1000 个,均在int 范围内)中的偶数和奇数分别统计出来,同时将所有偶数按照从小到大进行输出。
请你帮小爱编程解决这个问题。
输入格式 一行若干个整数,以 0 结束,以空格间隔。
输出格式 输出三行,
第一行若干个整数,为从小到大排列的偶数,以 1 个空格间隔。
第二行一个整数,为偶数的个数。
第三行一个整数,为奇数的个数。
# include <iostream>
# include <iomanip>
# include <cstdio>
# include <cmath>
# include <cstring>
# include <algorithm>
# include <string>
using namespace std;
vector<int> v;
int main () {
int x;
int cnt=0;
int cnt2=0;
while(cin>>x && x!=0)
{
v.push_back(x);
}
int len=v.size();
for(int i=1;i<=len;i++)
{
if(x%2==0)
{
cnt++;
sort(i+1,i+x+1);
cout<<x;
}
}
cout<<endl;
for(int i=1;i<=len;i++)
{
if(x%2!=0)
{
cnt2++;
}
}
cout<<cnt<<endl<<cnt2<<endl;
return 0;
}
帮我看看为什么编译错误(给代码更好,哈哈哈)