编写程序,从一个 list<int>拷贝元素到两个 deque 中,其中值为偶数的所 有元素都拷贝到一个 deque 中,而奇数元素都拷贝到另一个 deque 中。
时间: 2024-02-12 11:02:40 浏览: 73
好的,这是一个简单的 C++ 代码实现。
```c++
#include <iostream>
#include <list>
#include <deque>
using namespace std;
int main() {
list<int> mylist = {1, 2, 3, 4, 5, 6, 7, 8, 9};
deque<int> odd, even;
for (auto it = mylist.begin(); it != mylist.end(); ++it) {
if (*it % 2 == 0) {
even.push_back(*it);
} else {
odd.push_back(*it);
}
}
cout << "Odd deque: ";
for (auto it = odd.begin(); it != odd.end(); ++it) {
cout << *it << " ";
}
cout << endl;
cout << "Even deque: ";
for (auto it = even.begin(); it != even.end(); ++it) {
cout << *it << " ";
}
cout << endl;
return 0;
}
```
输出为:
```
Odd deque: 1 3 5 7 9
Even deque: 2 4 6 8
```
首先定义了一个 `list<int> mylist`,其中包含了一些整数。
然后定义了两个 `deque<int>`,分别用于存储奇数和偶数。
使用 `for` 循环遍历 `mylist` 中的每个元素,如果元素是偶数,则将其添加到 `even` 中,否则添加到 `odd` 中。
最后使用两个 `for` 循环打印输出 `odd` 和 `even` 中的元素。
阅读全文