C++Primer第五版 9.2.7节练习
2015-09-17 07:32
281 查看
练习9.15:编写程序,判定两个
答:见练习9.15.cpp
练习9.16:重写上一题的程序,比较一个
答: 见练习9.16.cpp
练习9.17:假定c1和c2是两个容器,下面的比较操作有何限制(如果有的话)?
if (c1 < c2)
答:c1和c2的容器中的元素类型必须要支持<的比较操作,否则,这个语句错误。
练习9.15
练习9.16
vector<int>是否相等。
答:见练习9.15.cpp
练习9.16:重写上一题的程序,比较一个
list<int>中的元素和一个
vector<int>中的元素。
答: 见练习9.16.cpp
练习9.17:假定c1和c2是两个容器,下面的比较操作有何限制(如果有的话)?
if (c1 < c2)
答:c1和c2的容器中的元素类型必须要支持<的比较操作,否则,这个语句错误。
练习9.15
/* *练习9.15 *日期:2015/7/28 *问题描述:练习9.15:编写程序,判定两个vector<int>是否相等。 *功能;比较 *作者:Nick Feng *邮箱:nickgreen23@163.com */ #include <iostream> #include <vector> using namespace std; void compare_vector(vector<int> vec1, vector<int> vec2) { if(vec1.size() == vec2.size()) { int flag = 0; for(auto i = 0; i != vec1.size(); ++i) { if(vec1[i] == vec2[i]) flag = 1; else flag = 0; } if(flag == 1) cout << "Equal!!!" << endl; else cout << "Not Equal..." << endl; } else cout << "Not Equal..." << endl; } int main() { vector<int> vec1 = {1,2,3,4,5,6,7,8}; vector<int> vec2 = {1,2,3,4}; vector<int> vec3 = {1,2,3,4}; cout << "compare vec1 and vec2: "; compare_vector(vec1, vec2); cout << "compare vec2 and vec3: "; compare_vector(vec2, vec3); return 0; }
练习9.16
/* *练习9.16 *日期:2015/7/28 *问题描述: *功能; *作者:Nick Feng *邮箱:nickgreen23@163.com */ #include <iostream> #include <vector> #include <list> using namespace std; bool compare_vector(vector<int> vec1, vector<int> vec2, int a, int b)//输入两个参数,a,b表示访问的下标,利用了vector<int> 随机访问的特性 { if(a <= vec1.size() && b <= vec2.size()) { if(vec1[a] == vec2[b]) return true; else return false; } else return false; } bool compare_list_vector(list<int> li, vector<int> vec, int a, int b) { vector<int> temp(li.begin(), li.end()); //利用拷贝初始化,先将li的内容拷贝一个vector<int> temp,然后就和上面一样了。 if(a <= temp.size() && b <= vec.size()) { if(temp[a] == vec[b]) return true; else return false; } else return false; } int main() { vector<int> vec1 = {1,2,3,4,5,6}; vector<int> vec2 = {1,2,3,4,5}; list<int> li = {1,2,3,4,5,6}; if(compare_list_vector(li,vec1,2,2)) cout << "Equal!!!" << endl; else cout << "Not Equal..." << endl; return 0; }
相关文章推荐
- C++Primer 第五版 9.2节练习
- C++Primer第五版 9.2.5节练习
- C++Primer第五版 9.2.3节练习
- C++Primer第五版 9.2.2节练习
- C++Primer第五版 9.2.1节练习
- C++Primer第五版 9.1节练习
- C++Primer第五版 第8章 IO库(练习解答)
- C++Primer第五版 8.3.2节练习
- C++Primer第五版 8.3.1节练习
- C++Primer第五版 8.2.2节练习
- C++Primer第五版 8.2.1节练习
- C++Primer第五版 8.1.2节练习
- C++Primer第五版 第7章 类(练习解答)
- C++Primer第五版 7.6节练习
- C++Primer第五版 7.5.6节练习
- C++Primer第五版 7.5.5节练习
- C++Primer第五版 7.5.4节练习
- Leetcode House Robber II
- 类型混用引发的血案(C语言)
- c-free配置c++11