所以,伙计们,我有一个包含各种行的文件,例如“GAME:1 Bob (@) - 404”,玩家的名字是 Bob,他的最高分数是 404,并且有很多这样的行。基本上我必须阅读每一行,看看谁得分最高,并在 c 中打印出他的名字和得分。到目前为止我有这个:
FILE *fp;
char * line = NULL;
size_t len = 0;
size_t read;
fp - fopen("Leaderboard.dat", "r");
if (fp == NULL) {
printf("File empty/unable to open");
}
现在我实际上不知道如何正确地做到这一点..
最佳答案
char buffer[100];
char code[4];
char name[100];
int maxScore=0;
char maxName[100];
char maxCode[4];
while(fscanf(fp,"%s %s %s %c %d",buffer,name,code,buffer[0],&score) !=EOF)
{
if(score>maxScore)
{
maxScore=score;
strcpy(maxCode,code);
strcpy(maxName,name);
}
}
printf("Name: %s. Code %s Score %d",maxName,maxCode,maxScore);
关于c - 在c中逐行读取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38840695/