/*
    第2種情報処理技術者試験    平成8年度・春期・午後 問7
                                BohYoh Shibata PREPARATION
*/

#include <stdio.h>
#include <stdlib.h>

#define QNUM 50

main()
{
    FILE  *fp;
    char   cbuf[QNUM + 1];
    int    total = 0, maxp = 0, minp = QNUM,
           cpnt, p, good[QNUM];
    long   tpnt = 0, no;
    double avep, tavep;

   for (p = 0; p < QNUM; p++)
      good[p] = 0;

    fp = fopen("test-f.dat", "r");
    while (fscanf(fp, "%ld%s",  &no, cbuf ) != EOF) {
        total++;
        cpnt = 0 ;
        for (p = 0; p < QNUM; p++)
            if ( cbuf[p] == '1' ) {
                cpnt++;
                good[p]++;
            }
        if (cpnt > maxp)
            maxp = cpnt;
        if (cpnt < minp)
            minp = cpnt;
        tpnt += cpnt;
    }
    fclose(fp);

    avep = (double)tpnt / QNUM * 100.0 / total;
    printf("             試験集計レポート\n\n"
           "受験者数: %4d  平均正答率: %6.2f %%\n"
           "最高正答数: %2d  最低正答数: %2d\n\n",
           total, avep, maxp, minp);
    for (p = 0; p < QNUM; p++) {
        tavep = good[p] * 100.0 / total;
        printf("問題[%2d] 正答者数: %4d 正答率: %6.2f %%\n",
               p + 1, good[p], tavep);
    }
}