关于C++中sort函数对string类数组的排序问题
/*题目描述
输入一段由若干个以空格分隔的单词组成的英文文章,求出文章中最短的单词(文章以英文句点“.”结束,且字符总数不超过200)。
*/
#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
int main()
{
int i=0;
string str;
while(true)
{
int flag=0;
cin>>str;
for(int j=0;j<str.size();j++)
if(str=='.')
flag=1;
if(flag)
break;
i++;
}
sort(str,str+i);
for(int i=0;i<str.size();i++)
if(str!='.')
cout<<str;
cout<<endl;
}
这道题我看到一种这样的解法,这里的sort函数是根据string类的长度来排序的吗? 输出结果将是把数组按升序排序 本帖最后由 人造人 于 2018-2-2 14:38 编辑
msdn
https://docs.microsoft.com/zh-cn/cpp/standard-library/algorithm-functions
https://docs.microsoft.com/zh-cn/cpp/standard-library/algorithm-functions?f1url=https%3A%2F%2Fmsdn.microsoft.com%2Fquery%2Fdev15.query%3FappId%3DDev15IDEF1%26l%3DZH-CN%26k%3Dk(ALGORITHM%2Fstd%3A%3Asort)%3Bk(std%3A%3Asort)%3Bk(sort)%3Bk(DevLang-C%2B%2B)%3Bk(TargetOS-Windows)%26rd%3Dtrue#sort
ba21 发表于 2018-2-2 14:25
输出结果将是把数组按升序排序
按什么规则升序排序?
页:
[1]