「国語、数学、英語の点数を別ファイルから読み取り、そこから合計点を出し、1位、2位、3位を表示するプログラム」をc++ で作りたいのですが、1位から3位までの表示方法がわかりません。ソートした上で1位から3位までを表示させたいのですがイメージとしては
出席番号 点数
1位
2位
3位
としたいのですが
どこを変えればいいのでしょうか
また、同率だった場合、1位(1人、もう1人)
2位
3位
と表示するにはどうすればいいのでしょうか

#include<stdio.h>

int main()
{
    FILE *f;
    float exam_result[30], xmax, sum[10], sumdummy;
    int i, j, jmin, n;

    f = fopen("ファイル名", "r");
    if(f == NULL){
        printf("ファイル名を開けません"¥n");
        return 1; 
    }

    for(i = 0; i < 30; i = i + 3)
        fscanf(f, "%g", exam_result[i]);

    fclose(f);

    if(n == 0){
        printf("ファイル名にはデータがありません);
        return1;
    }

    for(j = 0; j <= 10; j++){
        sum[j] = exam_result[3 * j] + exam_result[3 * j + 1] + exam_result[3 * j + 2];
    }

    for(j = 0; j < 10; j = j + 1){
        if(sum[j] < sum[jmin]) jmin = j;
    }

    if(j != jmin){
        sumdummy = sum[j];
        sum[j] = sum[jmin];
        sum[jmin] = sumdummy;
    }

    for(j = 0; j <= 3; j++){
        printf ("%g", sum[j]);
    }

    return 0;
}