日志排序

日志排序

http://www.nowcoder.com/questionTerminal/0f64518fea254c0187ccf0ea05019672

看到大佬的代码学会了sscanf

#include<stdio.h>
#include <stdlib.h>
#include<string.h>
typedef struct{
    char s[100];
    char name[20];
    char start1[20];
    char start2[20];
    double time;
}Node;

int cmp(const void *a,const void *b)
{
    Node * x = (Node *)a;
    Node * y = (Node *)b;
    if(x->time != y->time)
        return x->time*1000 - y->time*1000;
    else if(strcmp(x->start1,y->start1))
        return strcmp(x->start1,y->start1);
    else
        return strcmp(x->start2,y->start2);
}

int main()
{
    Node n[10001];
    int i = 0;
    while(gets(n[i].s) && strlen(n[i].s))
    {
        sscanf(n[i].s,"%s%s%s%lf",n[i].name,n[i].start1,n[i].start2,&n[i].time);
        i++;
    }
    qsort(n,i,sizeof(Node),cmp);
    for(int j = 0;j<i;j++)
        printf("%s\n",n[j].s);
    return 0;
}
全部评论

相关推荐

Hello_WordN:咱就是说,除了生命其他都是小事,希望面试官平安,希望各位平时也多注意安全
点赞 评论 收藏
分享
废铁汽车人:秋招真是牛鬼蛇神齐聚一堂
点赞 评论 收藏
分享
6 收藏 评论
分享
牛客网
牛客企业服务