题解 | #简单错误记录#

简单错误记录

https://www.nowcoder.com/practice/2baa6aba39214d6ea91a2e03dff3fbeb

#include <stdio.h>
#include <string.h>

#define _COUT   17

void FileNameCut(char *filename,char *outarray){
    int length = strlen(filename);
    if(length<16){
        strcpy(outarray,filename);
        return;
    }else{
        strcpy(outarray,&filename[length-16]);
        return;
    }
}

int main() {
    char InputUrl[101] = {0x00} ,Filename[101] = {0x00} ,CutName[17] = {0x00};
    char CompleteFlag = 0;
    int ErrorLine = 0;
    //int namelocat = 0;

    static int CurrLocat = 0;
    static char Output[100][18] = {0};
    static int ErrLines[8] = {0};

    while(scanf("%s %d",InputUrl,&ErrorLine) != EOF){
        strcpy(Filename,strrchr(InputUrl,'\\')+1);
        FileNameCut(Filename,CutName);
        for(int i=0;i<CurrLocat;i++){
            if((strcmp(Output[i],CutName) == 0)&&(ErrorLine == ErrLines[i])){
                Output[i][_COUT] ++;
                CompleteFlag = 1;
                break;
            }
        }
        if(CompleteFlag == 1){
            CompleteFlag = 0;
            continue;
        }
        strcpy(Output[CurrLocat],CutName);
        ErrLines[CurrLocat] = ErrorLine;
        Output[CurrLocat][_COUT] = 1;
        CurrLocat ++;
    }
    for(int i=CurrLocat-8;i<CurrLocat;i++){
        if(i<0) continue;
        if(Output[i][_COUT] != 0)
        printf("%s %d %d\n",Output[i],ErrLines[i],Output[i][_COUT]);
    }
}

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务