#include <iomanip> #include <iostream> using namespace std; int main() { int n;//总课程数 float credit = 0.0, gpa = 0.0,GPA = 0.0;//分别代表学分、绩点和平均绩点 int grade;//科目成绩 while (cin >> n) { // 注意 while 处理多个 case float cre[n]; int gra[n]; //输入学分 for (int i = 0; i < n ; i++){ cin>>cre[i]; credit += cre[i]; } //输入成绩 for (int i = 0; i < n ; i++){ cin>>gra[i]; } //计算平均绩点 for (int i = 0; i < n ; i++){ if (gra[i] >= 90 && gra[i] <= 100) gpa = 4.0; else if (gra[i] >= 85 && gra[i] <= 89) gpa = 3.7; else if (gra[i] >= 82 && gra[i] <= 84) gpa = 3.3; else if (gra[i] >= 78 && gra[i] <= 81) gpa = 3.0; else if (gra[i] >= 75 && gra[i] <= 77) gpa = 2.7; else if (gra[i] >= 72 && gra[i] <= 74) gpa = 2.3; else if (gra[i] >= 68 && gra[i] <= 71) gpa = 2.0; else if (gra[i] >= 64 && gra[i] <= 67) gpa = 1.5; else if (gra[i] >= 60 && gra[i] <= 63) gpa = 1.0; else gpa = 0.0; gpa = cre[i] * gpa; GPA += gpa; } cout << fixed << setprecision(2)<<GPA/credit<<endl; } } // 64 位输出请用 printf("%lld")