依题意直接做即可,注意四舍五入!

#include<cstdio>
using namespace std;
int main() {
    int x,n;
    double score=0,tot=0;//score是每门成绩×学分的总和,tot是学分总和
    scanf("%d",&n);
    for (double a[7]; n; n--) {
        scanf("%d",&x);
        for (int i=0; i<7; i++) scanf("%lf",&a[i]);
        if (x==2) continue;//仅计算必修和限选课程,2为任选
        tot+=a[0];
        score+=a[0]*(int)(a[1]*a[2]+a[3]*a[4]+a[5]*a[6]+0.5);//注意四舍五入
    }
    printf("%.2lf",score/tot);
}