御笔剑客 发表于 2018-2-2 13:31:18

关于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类的长度来排序的吗?

ba21 发表于 2018-2-2 14:25:36

输出结果将是把数组按升序排序

人造人 发表于 2018-2-2 14:36:52

本帖最后由 人造人 于 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



御笔剑客 发表于 2018-2-2 18:24:33

ba21 发表于 2018-2-2 14:25
输出结果将是把数组按升序排序

按什么规则升序排序?
页: [1]
查看完整版本: 关于C++中sort函数对string类数组的排序问题