PTA 520 钻石争霸赛 7-3 平均成绩 (10分)

给定一所学校学生的体育成绩,请你统计全班的平均成绩和男生、女生的平均成绩。

输入格式:
输入首先在第一行中给出一个正整数 N(≤10000),即全校学生人数。最后 N 行,每行按照格式 性别 成绩 给出一位学生的信息。其中 性别 为 1 表示男生,0 表示女生;成绩 是一个 0 到 100 之间的整数。

输出格式:
在一行中依次输出全班的平均成绩、男生的平均成绩、女生的平均成绩。输出小数点后1位,数字间有一个空格分隔。

注意:如果全是男生或全是女生,则缺少的性别就没有办法计算平均分,相应的位置应该输出一个 X 表示没有。

输入样例 1:

5
1 97
0 91
0 98
1 95
1 90

输出样例 1:

94.2 94.0 94.5

输入样例 2:

5
0 97
0 91
0 98
0 95
0 90

输出样例 2:

94.2 X 94.2

e,f不能等于0!!!(分母不能为0!!!)

#include 
#include 
int main()
{
     
    int n,a,b,e=0,f=0,i;
    double c=0,d=0,num,a1,a2;
    scanf("%d",&n);
    for(i=0; i<n; i++)
    {
     
        scanf("%d %d",&a,&b);
        if(a==1)
        {
     
            c+=b;
            e++;
        }
        else
        {
     
            d+=b;
            f++;
        }
    }
    num=(c+d)/n;
    if(e==0)
    {
     
        a2=d/f;
        printf("%.1f X %.1f",num,a2);
    }
    else if(f==0)
    {
     
        a1=c/e;
        printf("%.1f %.1f X",num,a1);
    }
    else
    {
     
        a1=c/e;
        a2=d/f;
        printf("%.1f %.1f %.1f",num,a1,a2);
    }
    return 0;
}

你可能感兴趣的:(PTA 520 钻石争霸赛 7-3 平均成绩 (10分))