成绩排名(PTA)-创新互联
某学校的成绩单算法如下:
专注于为中小企业提供成都做网站、成都网站设计、成都外贸网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业椒江免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上1000+企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。最终成绩 = (A课成绩 * A课学分 + B课成绩 * B课学分 + C课成绩 * C课学分 + D课成绩 * D课学分)/总学分,结果保留两位小数。
如某同学成绩如下:
课程名称 | 学 分 | 分 数 |
---|---|---|
算法分析与设计 | 4.0 | 90 |
大学物理 | 3.5 | 85 |
Python程序设计 | 3.0 | 95 |
计算机系统基础 | 4.0 | 82.5 |
线性代数 | 3.0 | 80 |
则他的最终成绩为
(4.0 * 90 + 3.5 * 85 + 3.0 * 95 + 4.0 * 82.5 + 3.0 * 80)/(4.0+3.5+3.0+4.0+3.0) = 86.43
现在给你几组学生的成绩,要求你计算他们的最终成绩,并对他们进行排名。
输入格式:第一行输入两个数,学生的个数S(10000以内)及课程数C(100以内)。
第二行输入C个数,分别是C门课程的学分。
接下来的S行,每一行有C个数,这C个数分别代表学生C门课的成绩,每门课的成绩出现顺序与第二行的学分一一对应。
每门课的成绩满分为100分,学分最高不超过10。
输出格式:输出有S行,由高到低的输出学生的最终成绩,以及学生在输入中出现的次序(从1开始),如果有最终成绩相同的学生,则他们的顺序按输入中的次序有小到大排列。成绩保留两位有效数字。
输入样例:在这里给出一组输入。例如:
4 2
2.5 4
90 80
94 92.5
80 75
90 95
输出样例:在这里给出相应的输出。例如:
93.08 2
93.08 4
83.85 1
76.92 3
#includeusing namespace std;
void swap(int &a, int &b)
{
int temp = a;
a = b;
b = temp;
}
int main(){
int s,c,i,j;//s个学生,c个课程
cin >>s >>c;
float num[c],ct=0;//num每个学分,ct总学分
for(i=0;i>num[i];
ct += num[i];
}
float val[s]={0},k;//val存储成绩,k每次输入成绩
int val2[s]={0};
for(i=0;i>k;
val[i]+=k*num[j];
val2[i]=i+1;
}
val[i]/=ct;
}
for(i=0;i
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
当前题目:成绩排名(PTA)-创新互联
转载来源:http://lswzjz.com/article/shdec.html