1103: 平均学分绩点(函数专题)
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 2291 Solved: 1183
Submit Status Web Board
Description
平均学分绩点(Grade Point Average,即GPA)是以学分与绩点作为衡量学生学习的量与质的计算单位,以取得一定的学分和平均学分绩点作为毕业和获得学位的标准,实施多样的教育规格和较灵活的教学管理制度。
大学里每一门课程都有一定的学分。只有通过这门课的考试,才能获得相应的学分。课程绩点的计算方法通常是:(百分制成绩-50)/10 取整。成绩100,对应绩点为5,成绩90~99对应绩点为4,......,成绩60~69对应绩点为1,成绩小于60,对应绩点为0。
平均学分绩点的计算方法是:是将学生修过的每一门课程的绩点乘以该门课程的学分,累加后再除以总学分。 平均学分绩点可以作为学生学习能力与质量的综合评价指标之一。请编程计算一个学生的平均学分绩点。
Input
输入n表示有n门课程,然后输入n门课程的学分和成绩,学分和成绩都是整数。
Output
输出平均学分绩点,保留一位小数。
Sample Input
32 953 855 75
Sample Output
2.7
HINT
Source
真是够了,加上EOF 就是错的
代码:
/*=============================AC情况===============================*/
/*题目网址: */
/*时间: */
/*心得: */
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define g 100
int ji(int x) {
if(x>=60)
return (x-50)/10;
else
return 0;
}
int main() {
int n,cj[g],xf[g];
double G,ans,zf;
scanf("%d",&n);
ans=0;
zf=0;
for(int j=0; j<n; j++) {
scanf("%d%d",&xf[j],&cj[j]);
ans=ans+ji(cj[j])*xf[j];
zf=zf+xf[j];
}
G=ans/zf;
printf("%.1lf\n",G);
return 0;
}
/*********************************测试数据*********************************
**************************************************************************/