随笔分类 -  【C++ Primer的学习】

C++ Primer 第11章 习题11.29
摘要://11.29.cpp //读入文本文件,存储在list容器中 //将其中重复的单词去掉,并输出输入序列中不重复的单词 #include<iostream> #include<fstream> #include<list> #include<algorithm> #include<string> using namespace std; //main函数接受文件名为参数 int main(int argc,char **argv) { //检查命令行参数个数 if(argc<2) { cerr<<"No i 阅读全文

posted @ 2012-03-04 20:30 1.曲待续 阅读(165) 评论(0) 推荐(0)

C++ Primer 第11章 习题11.22
摘要://11.22.cpp //对于一个存储了10个元素的vector对象, //将其中的3~7个位置上的元素以逆序复制给list对象 #include<iostream> #include<vector> #include<list> #include<algorithm> #include<iterator> using namespace std; int main() { int ia[]={1,2,3,4,5,6,7,8,9,10}; vector<int> ivec(ia,ia+10); list<int&g 阅读全文

posted @ 2012-03-04 14:05 1.曲待续 阅读(161) 评论(0) 推荐(0)

C++ Primer 第11章 习题11.20
摘要://11.21.cpp //使用find在一个int型的list中寻找值为0的最后一个元素 #include<iostream> #include<list> #include<algorithm> #include<iterator> using namespace std; int main() { int ia[]={0,1,2,3,4,5,6,7,8,9}; list<int> ilst(ia,ia+10); list<int>::reverse_iterator riter;//反向迭代器 //寻找为0的最后一个 阅读全文

posted @ 2012-03-04 13:49 1.曲待续 阅读(163) 评论(0) 推荐(0)

C++ Primer 第11章 习题11.19
摘要://11.19.cpp //使用reverse_iterator对象以逆序输出vector容器对象的内容 #include<iostream> #include<vector> #include<iterator> using namespace std; int main() { int ia[]={0,1,2,3,4,5,6,7,8,9}; vector<int> ivec(ia,ia+10); vector<int>::reverse_iterator r_iter; //反向迭代器 //逆序输出vector容器对象中的元素 f 阅读全文

posted @ 2012-03-04 13:25 1.曲待续 阅读(134) 评论(0) 推荐(0)

C++ Primer 第11章 习题11.18
摘要://11.18.cpp //使用istream_iterator对象从标准输入读入一系列整数 //使用ostream_iterator对象将其中的奇数写到一个文件中 //并在每个写入的值后面加一个空格 //同样使用ostream_iterator对象将偶数写到第二个文件 //每个写入的值都存放在单独的行中 #include<iostream> #include<fstream> #include<iterator> #include<algorithm> using namespace std; int main() { //打开输出文件流并关联 阅读全文

posted @ 2012-03-04 01:35 1.曲待续 阅读(126) 评论(0) 推荐(0)

C++ Primer 第11章 习题11.16
摘要://11.16.cpp //使用copy算法将一个文件的内容写到标准输出中 #include<iostream> #include<cstdlib> #include<fstream> #include<string> #include<iterator> #include<algorithm> using namespace std; int main() { string fileName; //输入文件名 cout<<"Enter input file name:"<<en 阅读全文

posted @ 2012-03-04 01:11 1.曲待续 阅读(152) 评论(0) 推荐(0)

C++ Primer 第11章 习题11.15
摘要://11.15.cpp //使用unique_copy算法 //将一个list对象中不重复的元素复制到一个空是vector对象中 #include<iostream> #include<list> #include<vector> #include<algorithm> #include<iterator> using namespace std; int main() { int ia[]={1,2,3,4,100,5,100}; list<int> ilst(ia,ia+7); vector<int> iv 阅读全文

posted @ 2012-03-04 00:29 1.曲待续 阅读(103) 评论(0) 推荐(0)

C++ Primer 第11章 习题11.14
摘要:【解答】假设vector容器中ivec中的序列为1 2 3 4 100 5 100,将ivec复制给list容器ilst,并将ivec中值为100的元素替换为0值使用inserter实现:replace_copy(ivec.begin(),ivec.end(), inserter(ilst,ilst.begin()),100,0);在输出序列中的固定位置实现插入,因此ilst中的序列为:12 3 4 0 5 0使用back_inserter实现:replace_copy(ivec.begin(),ivec.end(), back_inserter(ilst),100,0);总是在输出序列的前端 阅读全文

posted @ 2012-03-04 00:15 1.曲待续 阅读(135) 评论(0) 推荐(0)

C++ Primer 第4章 习题4.35
摘要://4.35.cpp //读入一组string类型的数据,并将它们存储在vector中 //接着,把vector对象复制给一个字符指针数组 //为vector中的每个元素创建一个新的字符数组, //并把该vector元素的数据复制到相应的字符数组中 //然后把指向该数组的指针插入字符指针数组中 //输出建立vector对象和数组的内容 #include<iostream> #include<vector> #include<string> using namespace std; int main() { vector<string> svec; 阅读全文

posted @ 2012-03-03 23:00 1.曲待续 阅读(136) 评论(0) 推荐(0)

C++ Primer 第4章 习题4.34
摘要://4.34.cpp //读入一组string类型的数据,并将它们存储在vector中 //接着,把该vector对象复制给一个字符指针数组。 //为vector中的每个元素创建一个新的字符数组, //并把该vector元素的数据复制到相应的字符数组中 //最后把指向该数组的指针插入字符指针数组 #include<iostream> #include<vector> #include<string> using namespace std; int main() { vector<string> svec; string str; //输入vec 阅读全文

posted @ 2012-03-03 22:36 1.曲待续 阅读(120) 评论(0) 推荐(0)

C++ Primer 第11章 习题11.9
摘要://泛型算法中对容器元素从新排序的算法 //11.9.cpp //读入文本文件 //统计长度不小于4的单词,并输出输入序列中不重复的单词 #include<iostream> #include<fstream> #include<vector> #include<algorithm> #include<string> using namespace std; //用于将单词按长度排序的比较函数 bool isShorter(const string &s1,const string &s2) { return s1.s 阅读全文

posted @ 2012-03-01 18:33 1.曲待续 阅读(120) 评论(0) 推荐(0)

C++ Primer 第11章 习题11.6
摘要://11.6.cpp //使用fill_n编写程序 //将一个int型序列的值设为0 #include<iostream> #include<vector> #include<iterator> using namespace std; int main() { vector<int> ivec; ivec.resize(10); //使该vector容器包含10个元素 fill_n(ivec.begin(),ivec.size(),0); //输出vector对象中的元素 for(vector<int>::iterator iter 阅读全文

posted @ 2012-03-01 17:08 1.曲待续 阅读(97) 评论(0) 推荐(0)

C++ Primer 第11章 习题11.3
摘要://11.3.cpp //用accumulate统计vector<int>容器对象中的元素之和 #include<iostream> #include<vector> #include<numeric> using namespace std; int main() { vector<int> ivec; int ival; int sum; //读入int型元素带vector对象中 cout<<"Enter some integers(Ctrl+z to end):"<<endl; whi 阅读全文

posted @ 2012-03-01 17:07 1.曲待续 阅读(112) 评论(0) 推荐(0)

C++ Primer 第11章 习题11.1
摘要://11.1.cpp //algorithm头文件定义一个名为count的函数 //其功能类似于find。 //这个函数使用一对迭代器和一个值做参数,返回这个值出现次数的统计结果。 //编写程序读取一系列int型数据,并将它们存储到vector对象中 //统计某个值出现了多少次 #include<iostream> #include<vector> #include<algorithm> using namespace std; int main() { vector<int> ivec; int ival; int ival1; int cnt 阅读全文

posted @ 2012-03-01 17:05 1.曲待续 阅读(121) 评论(0) 推荐(0)

C++ Primer 第10章 习题10.38
摘要://10.28.cpp //建立作者及其作品的multimap容器 //以下的格式按姓名首字母的顺序输出作者及其作品: //Author Names Beginning with 'A' //Author,book,book,....... //Author Names Beginning with 'B' //... #include<iostream> #include<map> #include<string> using namespace std; int main() { multimap<string,st 阅读全文

posted @ 2012-02-25 20:09 1.曲待续 阅读(141) 评论(0) 推荐(0)

C++ Primer 第10章 习题10.27
摘要://10.27.cpp //建立作者及其作品对multimap容器 //使用equal_range函数获取迭代器,然后删除一段范围内的元素 //当所寻找的元素不存在时,程序依然能正确执行 #include<iostream> #include<map> #include<string> using namespace std; int main() { multimap<string,string> authors; string author,work,searchItem; //建立作者及其作品的multimap容器 do { cout< 阅读全文

posted @ 2012-02-25 19:41 1.曲待续 阅读(136) 评论(0) 推荐(0)

C++ Primer 第10章 习题10.26
摘要://10.26.cpp //建立作者及其作品的multimap容器。 //使用find函数在multimap中查找元素 //并调用erase将其删除。 //当所寻找的元素不存在时,确保你的程序依然能正确执行 #include<iostream> #include<map> #include<string> using namespace std; int main() { multimap<string,string> authors; string author,work,searchItem; //建立作者及其作品的multimap容器 do 阅读全文

posted @ 2012-02-25 16:31 1.曲待续 阅读(125) 评论(0) 推荐(0)

C++ Primer 第10章 习题10.25
摘要://10.25.cpp //定义一个vector容器,存储在未来6个月里要阅读的书的名字 //定义一个set,用于记录已经看过的书名。 //本程序支持从vector中选择一本没有读过而现在要读的书。 //并且支持从已读数目的set中删除书的记录 //在虚拟的6个月后,输出已读和还没有读的书目 #include<iostream> #include<set> #include<vector> #include<string> #include<cstdlib> #include<ctime> using namespace 阅读全文

posted @ 2012-02-25 15:23 1.曲待续 阅读(117) 评论(0) 推荐(0)

C++ Primer 第10章 习题10.24
摘要://10.24.cpp //建立一个单词排除集 //用于识别以's'借位、但这个结尾的's',又不能删除的单词 //使用这个排除集删除输入单词尾部的's',生成该单词的非复数版本 //如果输入的是排除集中的单词,则保持该单词不变 #include<iostream> #include<set> #include<string> using namespace std; int main() { set<string> excluded; //建立单词排除集 excluded.insert(" 阅读全文

posted @ 2012-02-25 14:20 1.曲待续 阅读(154) 评论(0) 推荐(0)

C++ Primer 第3章 标准库类型习题+答案
摘要:第3章 标准库类型习题习题3.1 有适当的Using声明,而不用std::前缀,访问标准库中名字的方法,重新编写2.3节的程序,计算一给定数的给定次幂的结果。代码如下://程序清单 #include<iostream> using std::cin; using std::cout; using std::endl; int main() { int base,exponent; long result=1; cout<<"Enter base and exponent:"; cin>>base>>exponent; if(e 阅读全文

posted @ 2011-09-25 16:43 1.曲待续 阅读(872) 评论(0) 推荐(0)

导航