例如我输入123456785435430(我输入了'0',所以cin停止了,并且cout me cout me 2 4 6 8 4 4 3)
2 回答
1
你需要的东西是这样的:
char x;
std::vector<int> evens;
do {
std::cin.get(x);
int v = x - '0'; // int value
if (v % 2 == 0 and v != 0)
evens.push_back(v);
} while (x != '0');
for (std::vector<int>::iterator it = evens.begin(); it != evens.end(); ++it)
std::cout << (*it) << " ";
这是你练习的版本:
#include <vector>
#include <iostream>
void brc() {
int x;
std::cin >> x;
if (x == 0) return;
if (x % 2 == 0)
std::cout << x << " ";
brc();
}
int main() {
brc();
return 0;
}
0
这是一个适用于给定分隔符的简单版本,
#include <iostream>
using namespace std;
string input_until_delimiter (char delimiter)
{
string buffer = new string ();
char c = delimiter;
while ((c = get()) != delimiter) buffer += c;
return buffer;
}
2 回答
你需要的东西是这样的:
这是你练习的版本:
这是一个适用于给定分隔符的简单版本,