水题= 。=

模拟GPA计算(加权)

#include<stdio.h>
#include<string.h>
#define N 1000000 + 10
int main()
{
    int T , k;
    double cs[N] , cname[30+1];
    double credit;
    
    scanf("%d" , &T);
    while(T--)
    {
        scanf("%d" , &k);
        int flag = 1;
        double gpa = 0 , _credit = 0;
        
        for(int p=0; p<k; p++)
        {
            scanf("%s" , cname);
            scanf("%lf%lf" , &credit , &cs[p]);
            if(cs[p] < 60)
                flag = 0 , cs[p] = 0;
            cs[p] *= credit , _credit += credit;
        }

        for(int i=0; i<k; i++)    gpa += cs[i]/_credit;

        if(!flag)    printf("Sorry!\n");
        else        printf("%.2lf\n" , gpa);
        
        if(T)
            printf("\n");
    }

    return 0;
}
posted on 2018-02-25 18:21  23~  阅读(143)  评论(0)    收藏  举报