[ create a new paste ] login | about

Link: http://codepad.org/XQvrPjA2    [ raw code | output | fork ]

C, pasted on Jul 5:
#include <stdio.h>
#define NUM 3
struct record {
    int no;
    int rec[NUM];
};
struct record rec[] = {
{1, {81, 24, 63}},
{2, {28, 15,  7}},
{3, {89, 92, 88}},
{4, {32, 88, 66}},
{5, {92, 46, 81}},
{-1, {0, 0, 0}}
};
char *title[NUM] = {"英語", "数学", "物理"};

int main()
{
    struct record *p;
    float ave[NUM] = {0}, sum;
    int i;
    int num = 0;
    p = rec;
    while (p->no != -1) {
        sum = 0.0;
        printf("学籍番号[%d] ", p->no);
        for (i = 0; i < NUM; i++) {
            ave[i] += p->rec[i];
            sum += p->rec[i];
        }
        printf("学科平均 [%.2f]\n", sum / NUM);
        num++;
        p++;
    }
    for (i = 0; i < 3; i++) {
        printf("[%s]の科目平均点[%.2f]\n", title[i], ave[i] / num);
    }
    return 0;
}


Output:
1
2
3
4
5
6
7
8
学籍番号[1] 学科平均 [56.00]
学籍番号[2] 学科平均 [16.67]
学籍番号[3] 学科平均 [89.67]
学籍番号[4] 学科平均 [62.00]
学籍番号[5] 学科平均 [73.00]
[英語]の科目平均点[64.40]
[数学]の科目平均点[53.00]
[物理]の科目平均点[61.00]


Create a new paste based on this one


Comments: