편집 기록

편집 기록
  • 프로필 nowp님의 편집
    날짜2020.06.20

    C 파일 입출력 정렬


        gotoxy(41, 15); scanf("%s", name); fflush(stdin);
        fp = fopen("ranking.txt", "at+");
        if (fp == NULL)
        {
            printf("파일 오픈 실패");
            return 1;
        }
        fprintf(fp, "%10s\t\t%d\n", name, score);
        fclose(fp);
    

    이런식으로 입력받아서

    
        김김김       0
        홍길동       20
    
    

    이런 텍스트 파일을

        char ch;
        char buffer[MAX_LENGHT];
        FILE* file = NULL;
        if (0 == fopen_s(&file,"ranking.txt", "rt"))
        {   
            printf("\n    <이름>\t     <점수>  ");
            printf("\t>> SPACE 누르면 메뉴화면으로 이동 <<\n\n");
            while (fgets(buffer, MAX_LENGHT, file) != NULL)
            {
                printf("%s", buffer);
            }
            fclose(file);
            printf("\n\n");
        }
    

    이렇게 출력 하였는데,

    '내림차순으로', '제한 된 순위까지' , '같은 이름이면 덮어쓰도록 '출력하고 싶습니다. 어떻게 하면 좋을까요? 파일 입출력은 아직 어렵네요.

    시도는 해봤는데 계속 오류가 떠서 진행이 안 되네요 도와주시면 정말 감사하겠습니다.

  • 프로필 알 수 없는 사용자님의 편집
    날짜2020.06.20

    C 파일 입출력 정렬


        gotoxy(41, 15); scanf("%s", name); fflush(stdin);
        fp = fopen("ranking.txt", "at+");
        if (fp == NULL)
        {
            printf("파일 오픈 실패");
            return 1;
        }
        fprintf(fp, "%10s\t\t%d\n", name, score);
        fclose(fp);
    

    이런식으로 입력받아서

    
        김김김       0
        홍길동       20
    
    

    이런 텍스트 파일을

        char ch;
        char buffer[MAX_LENGHT];
        FILE* file = NULL;
        if (0 == fopen_s(&file,"ranking.txt", "rt"))
        {   
            printf("\n    <이름>\t     <점수>  ");
            printf("\t>> SPACE 누르면 메뉴화면으로 이동 <<\n\n");
            while (fgets(buffer, MAX_LENGHT, file) != NULL)
            {
                printf("%s", buffer);
            }
            fclose(file);
            printf("\n\n");
        }
    

    이렇게 출력 하였는데,

    '내림차순으로', '제한 된 순위까지' , '같은 이름이면 덮어쓰도록 '출력하고 싶습니다.. 어떻게 하면 좋을까요..? 파일 입출력은 아직 어렵네요...

    시도는 해봤는데 계속 오류가 떠서 진행이 안 되네요 도와주시면 정말 감사하겠습니다 ㅜㅜ