国外网站A,什么值得买网站模版,网站意见反馈源码,宣传工作网站建设作用成绩60分及以上的课程才予以计算绩点
绩点计算公式#xff1a;[(课程成绩-50) / 10 ] * 学分
学生总绩点为所有绩点之和除以10
输入格式#xff1a;
班级数
课程数 各个课程的学分
班级人数
姓名 各科成绩
输出格式#xff1a;
class 班级号:
姓名#xff08;占1…成绩60分及以上的课程才予以计算绩点
绩点计算公式[(课程成绩-50) / 10 ] * 学分
学生总绩点为所有绩点之和除以10
输入格式
班级数
课程数 各个课程的学分
班级人数
姓名 各科成绩
输出格式
class 班级号:
姓名占10个字符左对齐 绩点
先按绩点排序再按姓名ASCII码排序。 输入样例
1
3 3 4 3
3
张三 89 62 71
Smith 98 50 80
王五 67 88 91
输出样例
class 1:
王五 3.26
Smith 2.34
张三 2.28 #includeiostream
#includefstream
#includevector
#includeset
#includestring
#includeiomanip
using namespace std;struct Student{string name;double score;Student(string n, double s):name(n),score(s){}bool operator(const Student s) const {if(this-score ! s.score)return this-score s.score;elsereturn this-name s.name;}
}; int main(){ifstream cin(data.txt);//读取班级数并对每个班级的数据进行操作 int classNum 0;while(cin classNum){cout class #: classNum endl;//读入课程数并记录课程的学分 int courseNum 0;cin courseNum;vectorint xuefenVec(courseNum);for(int i 0; i courseNum; i)cin xuefenVec[i];//读入学生数并将学生用set进行排序 int stuNum 0;cin stuNum;setStudent stuSet; for(int i 0; i stuNum; i){string name;cin name;double sum 0;for(int j 0; j courseNum; j){double score 0;cin score;if (score 60){sum ((score-50)/10)*xuefenVec[j];}}Student s(name, sum/10);stuSet.insert(s); } //按序输出学生信息 for(setStudent::iterator it stuSet.begin(); it ! stuSet.end(); it){cout left setw(10);cout it-name it-score endl;}cout endl;}return 0;
}