
急急急!!!这是一个C++程序及结果,有点不懂。结果中set1>set2是指什么大于?ASC码值?求具体的比较过程
RT这是代码及结果:#include<iostream>#include<set>usingnamespacestd;voidmain(){set<char>cSet1;...
RT
这是代码及结果:
#include <iostream>
#include <set>
using namespace std;
void main()
{
set<char> cSet1; //建立集合1
cSet1.insert('C');//向集合1 插入元素
cSet1.insert('D');
cSet1.insert('A');
cSet1.insert('F');
cout << "set1:" << endl;
set<char>::iterator it;
for(it=cSet1.begin();it!=cSet1.end();it++)//显示集合1中元素
cout << *it << endl;
set<char> cSet2;//建立集合2
cSet2.insert('B');//向集合2 插入元素
cSet2.insert('C');
cSet2.insert('D');
cSet2.insert('A');
cSet2.insert('F');
cout << "set2:" << endl;
for(it=cSet2.begin();it!=cSet2.end();it++)//显示集合2中元素
cout << *it << endl;
if(cSet1==cSet2)
cout << "set1= set2";
else if(cSet1 < cSet2)
cout << "set1< set2";
else if(cSet1 > cSet2)
cout << "set1> set2";
cout << endl;
} 展开
这是代码及结果:
#include <iostream>
#include <set>
using namespace std;
void main()
{
set<char> cSet1; //建立集合1
cSet1.insert('C');//向集合1 插入元素
cSet1.insert('D');
cSet1.insert('A');
cSet1.insert('F');
cout << "set1:" << endl;
set<char>::iterator it;
for(it=cSet1.begin();it!=cSet1.end();it++)//显示集合1中元素
cout << *it << endl;
set<char> cSet2;//建立集合2
cSet2.insert('B');//向集合2 插入元素
cSet2.insert('C');
cSet2.insert('D');
cSet2.insert('A');
cSet2.insert('F');
cout << "set2:" << endl;
for(it=cSet2.begin();it!=cSet2.end();it++)//显示集合2中元素
cout << *it << endl;
if(cSet1==cSet2)
cout << "set1= set2";
else if(cSet1 < cSet2)
cout << "set1< set2";
else if(cSet1 > cSet2)
cout << "set1> set2";
cout << endl;
} 展开
4个回答
展开全部
主要理解程序中的Iterator是一种迭代器(Iterator)模式,又叫做游标(Cursor)模式,它可以提供一种方法访问一个容器(container)对象中各个元素,而又不需暴露该对象的内部细节。从而让其自身去实现遍历的过程,因此set1和set2才会按顺序输出插入的字母,而不用去管插入顺序。当然最后比较是比较到set1和set2的第二个字符,因为C>B,所以结果就出来了!
展开全部
set1 的 字母的 ASCII 与set2 的比较
首先第一个字母比较,都是 'A'
然后set1的第二个字母是'C',set2的第二个字母是'B','C'>'B',因此set1>set2
首先第一个字母比较,都是 'A'
然后set1的第二个字母是'C',set2的第二个字母是'B','C'>'B',因此set1>set2
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
比较ASC码的值!第一位先比较哪个大然后有结果则输出!
第一位相同则比较第二位,以此类推!
第一位相同则比较第二位,以此类推!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
字符串比较,全部相等为0,否则判断第一个不等的字符,也就是这里的 C > B , 所以set1 > set2
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询