日至排序

作者: 故梦_三笙 | 来源:发表于2019-04-30 14:58 被阅读1次
    image.png
    #include <stdio.h>
    #include<string.h>
    #include<string>
    #include<iostream>
    #include<algorithm>
    using namespace std;
    struct r
    {
        char s[100];
        string name;
        string start;
        double time;
    }buf[10000];
    bool cmp(r a,r b)
    {
        if(a.time!=b.time)
            return a.time<b.time;
        return a.start<b.start;
    }
    int main()
    {
        int num=0;
        char start1[15],start2[15],name[15];
      while(gets(buf[num].s)&&strlen(buf[num].s)!=0){
            sscanf(buf[num].s,"%s%s%s%lf",name,start1,start2,&buf[num].time);
            //r[size].name=name;//名字反正也用不到,不赋值也行
           buf[num++].start=string (start1)+string(start2);
        }
        sort(buf,buf+num,cmp);
        for(int i=0;i<num;i++)
            printf("%s\n",buf[i].s);
        return 0;
    }
    
    

    这道题主要是sscanf的用法,反正我还没太明白,以后再看看。sscanf用法

    相关文章

      网友评论

        本文标题:日至排序

        本文链接:https://www.haomeiwen.com/subject/rikvnqtx.html