#include<iostream> #include<string> #include<vector> using namespace std; void main(){ vector<string>p; for(;;) //连续输入string对象,直到输入一个字母end { string str; cin>>str; if(str.size()==1)break; p.push_back(str); } bool state; //冒泡排序,将string对象按词典顺序排序 for(int i=0;i<p.size();i++){ state=true; for(int j=p.size()-1;j>i;j--){ if(p[j].substr(0,1)<p[j-1].substr(0,1)){ string temp=p[j]; p[j]=p[j-1]; p[j-1]=temp; state=false; } } if(state)break; } for(i=0;i<p.size();i++) //输出排号序的string对象 cout<<p[i]<<'\t'; cout<<endl; } 好像按词典排序可用sort()方法,不过具体需要的参数和包含的头文件我不清楚

评论