平均绩点通常指平均学分绩点(即GPA,Grade Point Average)。某些学校采用学分绩点制对学生学习质量进行评定,平均学分绩点是主要考察指标。
本篇博客提供了C++语言编写的GPA计算器,供大家计算学期的GPA,若有疑问,请在下方评论。
先附上源代码
//5.0分制——绩点计算器 //低于60分绩点记为0 //2019.04.30 ——LeoHao #include<iostream> using namespace std; int SubjectNum=0; //学科数目 float *score=NULL; //学科分数 float *credit=NULL; //学科学分 float *gradePoint=NULL; //学科绩点 bool *isProfessional=NULL; //是否专业课 float wholeCredit=0; //专业课总学分 float GPA=0; //绩点 void ScoreToPoint(); //成绩转绩点 void GetGPA(); //计算GPA int main() { int i=0; cout<<"请输入考试科目总数"<<endl; cin>>SubjectNum; score=new float[SubjectNum]; credit=new float[SubjectNum]; gradePoint=new float[SubjectNum]; isProfessional=new bool[SubjectNum]; cout<<"请依次输入"<<SubjectNum<<"门科目的成绩,并标注是否为专业课。(例:算法设计 4个学分,95分,为专业课,则输入1 4 95,不为专业课,则输入0 4 95)"<<endl; for(i=0;i<SubjectNum;i++) cin>>isProfessional[i]>>credit[i]>>score[i]; //计算专业课总学分 for(i=0;i<SubjectNum;i++) wholeCredit+=(isProfessional[i]*credit[i]); ScoreToPoint(); //成绩转绩点 GetGPA(); //计算GPA cout<<"您各个科目获得的绩点如下:"<<endl<<endl; for(i=0;i<SubjectNum;i++) cout<<"科目"<<i+1<<"\t"; cout<<endl; for(i=0;i<SubjectNum;i++) cout<<gradePoint[i]<<"\t"; cout<<endl<<endl; cout<<"综合计算,您获得的GPA(平均学分绩点)为"<<GPA<<endl; getchar(); getchar(); return 0; } void ScoreToPoint() //成绩转绩点 { int i=0; for(i=0;i<SubjectNum;i++) { if(score[i]<60) gradePoint[i]=0; //低于60分绩点记为0 else gradePoint[i]=5.0-0.1*(100-score[i]); } } void GetGPA() //计算GPA { int i=0; for(i=0;i<SubjectNum;i++) GPA+=(isProfessional[i]*gradePoint[i]*(credit[i]/wholeCredit)); }
讯享网
使用方法请按照提示进行,下面给出例子。
如某人一学期的成绩如下:
| 课程名称 | 课程性质 | 学分 | 成绩 |
| 计算机组成原理* | 必修课 | 4 | 84 |
| 数据结构* | 必修课 | 4 | 94 |
| 概率论与数理统计 | 必修课 | 3 | 99 |
| 数据结构实验 | 必修课 | 1 | 94 |
| 计算机组成原理实验 | 必修课 | 1 | 93 |
| 单片机应用系统设计实训 | 必修课 | 1 | 91 |
| C#程序设计 | 选修课 | 2 | 93 |
| 中国近现代史纲要 | 必修课 | 3 | 75 |
| 形势与政策(Ⅲ) | 必修课 | 0.8 | 95 |
| 大学英语(Ⅲ) | 必修课 | 2 | 87 |
| 大学体育(Ⅲ) | 必修课 | 1 | 85 |
| 文学与人生 | 选修课 | 1 | 88 |
| 普通天文学 | 选修课 | 1 | 95 |
一共13门科目,必修课记为1,非必修课记为0,则输入的成绩信息如下表所示:
| 1 4 84 1 4 94 1 3 99 1 1 94 1 1 93 1 1 91 0 2 93 1 3 75 1 0.8 95 1 2 87 1 1 85 0 1 88 0 1 95 |
则计算过程截图如下:

程序下载链接:
① CSDN下载站
② 百度网盘(密码:5lql)
③ 【推荐】你还可以在 C++ Online Compiler & Interpreter - Replit 上快速粘贴代码并运行


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/21803.html