C++ Primer 中文版 第4版 习题9.18
2007-04-22 15:17
239 查看
/*我在这里写下部分C++ Primer 中文版 第4版 习题的个人解答和看法(注:我没有买答案书,所以不保证正确,你觉得错的,希望你能告诉我)源代码运行的要求和书上一样,省略了预编译和using行。假如有什么说的不详细,你还不懂,可以问我,不过我也是初学者,不一定知道阿,看我还在学C++ Prime 就知道我是初学者了。欢迎转载,但是请保留作者名“九天雁翎”。*/
void printContainer(list<int>::const_iterator,list<int>::const_iterator); //输出函数用来检验
void printContainer(deque<int>::const_iterator,deque<int>::const_iterator); //重载一个输入函数
int main()
{
list<int> ilist;
int aint;
while(cin>>aint) //以^Z结束,即Ctrl+Z结束
{
ilist.push_back(aint);
}
printContainer(ilist.begin(),ilist.end());
deque<int>evenDeque,oddDeque;
for(list<int>::const_iterator ilistFirst = ilist.begin(),ilistLast = ilist.end();
ilistFirst != ilistLast;++ilistFirst)
{
if(*ilistFirst%2) //判断奇偶,相当于if(*ilistFist%2==1)
oddDeque.push_back(*ilistFirst);
else
evenDeque.push_back(*ilistFirst);
}
cout<<"oddDeque:";
printContainer(oddDeque.begin(),oddDeque.end());
cout<<"evenDeque:";
printContainer(evenDeque.begin(),evenDeque.end());
return 0;
}
void printContainer(list<int>::const_iterator first,list<int>::const_iterator last)
{
cout<<endl;
for(;first != last;++first)
{
cout <<*first<<" ";
}
cout<<endl;
}
void printContainer(deque<int>::const_iterator first,deque<int>::const_iterator last)
{
cout<<endl;
for(;first != last;++first)
{
cout <<*first<<" ";
}
cout<<endl;
}
void printContainer(list<int>::const_iterator,list<int>::const_iterator); //输出函数用来检验
void printContainer(deque<int>::const_iterator,deque<int>::const_iterator); //重载一个输入函数
int main()
{
list<int> ilist;
int aint;
while(cin>>aint) //以^Z结束,即Ctrl+Z结束
{
ilist.push_back(aint);
}
printContainer(ilist.begin(),ilist.end());
deque<int>evenDeque,oddDeque;
for(list<int>::const_iterator ilistFirst = ilist.begin(),ilistLast = ilist.end();
ilistFirst != ilistLast;++ilistFirst)
{
if(*ilistFirst%2) //判断奇偶,相当于if(*ilistFist%2==1)
oddDeque.push_back(*ilistFirst);
else
evenDeque.push_back(*ilistFirst);
}
cout<<"oddDeque:";
printContainer(oddDeque.begin(),oddDeque.end());
cout<<"evenDeque:";
printContainer(evenDeque.begin(),evenDeque.end());
return 0;
}
void printContainer(list<int>::const_iterator first,list<int>::const_iterator last)
{
cout<<endl;
for(;first != last;++first)
{
cout <<*first<<" ";
}
cout<<endl;
}
void printContainer(deque<int>::const_iterator first,deque<int>::const_iterator last)
{
cout<<endl;
for(;first != last;++first)
{
cout <<*first<<" ";
}
cout<<endl;
}
相关文章推荐
- C++ Primer 中文版 第4版 习题9.28
- C++ Primer 中文版 第4版 习题10.9
- C++ Primer 中文版 第4版 习题3.14
- C++ Primer 中文版 第4版 习题10.2
- C++ Primer 中文版 第4版 习题3.19
- C++ Primer 中文版 第4版 习题4.28
- C++ Primer 中文版 第4版 习题4.30
- C++ Primer 中文版 第4版 习题9.7
- C++ Primer 中文版 第4版 习题9.13
- C++ Primer 中文版(第4版) 不完全勘误表
- 《C++ Primer 中文版》第4版 读书笔记
- [C++学习] C++ Primer 第4版 习题4.28 C++动态数组
- C++ primer 习题9.18
- [C++学习] c++ primer 第4版 习题3.14
- [C++ 学习] C++ Primer 第4版 习题 4.30 字符串操作 & 我对堆内存 和 常量区内存的一些理解
- C++ Primer 中文版(第5版) 习题答案
- 读书笔记之:C++ Primer (第4版)及习题(ch01-ch11)
- [C++ 学习] C++ Primer 第4版 习题 4.31
- C++ primer 习题练习:9.18
- c++ primer 第4版 习题