基础题。
#include <iostream>
#include <iomanip>
using namespace std;
//将分数转换为点数
int toCount(int x)
{
if (x >= 90) return 4;
else if (x >= 80) return 3;
else if (x >= 70) return 2;
else if (x >= 60) return 1;
else return 0;
}
int main()
{
int N;
while (cin >> N)
{
double s, p; //学分,分数
double sum = 0; //分数*点数 之和
double sumCredit = 0; //总学分
for (int i = 0; i < N; i++)
{
cin >> s >> p;
if (p == -1)
continue;
sum += s * toCount(p);
sumCredit += s;
}
if (sumCredit == 0)
cout << -1 << endl;
else
cout << fixed << setprecision(2) << sum / sumCredit << endl;
}
return 0;
}
继续加油。
本文介绍了一个简单的C++程序,用于将学生的分数转换为相应的点数,并计算加权平均绩点。程序读取输入的学分和分数,通过自定义函数进行分数到点数的转换,然后计算总绩点并输出。
854

被折叠的 条评论
为什么被折叠?



