39学生期末成绩与平均分、最高最低分计算.docx

上传人:rrsccc 文档编号:10422614 上传时间:2021-05-15 格式:DOCX 页数:11 大小:48.71KB
返回 下载 相关 举报
39学生期末成绩与平均分、最高最低分计算.docx_第1页
第1页 / 共11页
39学生期末成绩与平均分、最高最低分计算.docx_第2页
第2页 / 共11页
39学生期末成绩与平均分、最高最低分计算.docx_第3页
第3页 / 共11页
39学生期末成绩与平均分、最高最低分计算.docx_第4页
第4页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《39学生期末成绩与平均分、最高最低分计算.docx》由会员分享,可在线阅读,更多相关《39学生期末成绩与平均分、最高最低分计算.docx(11页珍藏版)》请在三一文库上搜索。

1、.河北工业大学计算机软件技术基础(VC)课程设计任务书(编号:39)附录个人参考源代码一、 题目:学生期末成绩及平均分、最高最低分计算二、 目的与要求:1 目的培养学生综合利用C+语言进行程序设计的能力,通过学生独立思考,提高学生将所学知识转化为分析和设计简单实际问题的能力,建立程序文档、归纳总结的能力,从而增强创新和实践能力。2 基本要求要求用 C+语言编程,在Visual C+环境下调试完成。3 创新要求进一步完善程序,按班级分类后,再分别求出平时成绩的和总成绩的最高分最低分;进一步考虑结构体数组大小设定为100 或 50,每次输入学生个数,再进行处理。三、 设计方法和基本原理:1 课题功

2、能描述在计算机文化基础课中讲了用 EXCEL处理数据表,可以对数据表进行填充数据、分类汇总等操作,要求对表 1 所示的数据表填充总成绩,并按班级求期末成绩、平时成绩和总成绩的平均分,各班期末成绩的最高分和最低分。2. 问题详细描述对表 1 所示的数据表进行填充和分类汇总,具体操作如下:1)填充总成绩,公式为:总成绩=期末成绩 *70%+平时成绩 *30%。2)分类汇总:( 1)按班级求期末成绩、平时成绩和总成绩的平均分( 2)各班期末成绩的最高分和最低分。3. 问题的解决方案:1)采用结构体数组存储表1 的数据表,结构体的成员中班级、学号、姓名字段为字符型.(char ),期末成绩、平时成绩和

3、总成绩成员为数值型,类型为double 型。定义如下:structstudentchar bj10;charxh9;char xm8;double qmchj;double pshchj;double zchj; std_s10;/ 此处结构体数组元素可以先设为10 个,调好后,再增加。2)调试时,提供数据的方法可以采用初始化或输入的方法。首先,以5-10 条记录进行测试,具体记录可在表1 中选择,程序调试正确后,再增加记录量。该题综合性较强,涉及到数组可参考教材第4 章,函数参考教材第5 章,结构体参考第6章。分类实际就是排序算法,讲过冒泡排序和选择排序,你自己任选一种,注意,对班级排序是字

4、符串排序,字符串比较要用字符串比较函数。3)输出结果要求:( 1)输出填充结果的数据表,形式如表1。( 2)班级期末成绩平均分平时成绩平均分总成绩平均分输出按班级汇总后传媒 1的期末成绩、平时成绩和总成绩平均传媒2分,形式如下:传媒 3( 3)输出各班期末成绩的最高分和最低分,形式如下:班级最高分最低分传媒 1传媒 2传媒 3.表 1各班学生成绩信息表班级学号姓名期末成绩平时成绩总成绩传媒 110641301刘晓玮6580传媒 210641302夏海霞7485传媒 110641303陈威8190传媒 210641304周莉8790传媒 310641305贾君7590传媒 110641306韩晓

5、萍5880传媒 210641307奚景泊8090传媒 310641308胡华8595传媒 110641309李栋9395传媒 210641310李建炎7080传媒 310641311包黎年6990传媒 110641312李娟9295传媒 210641313何小卫8490传媒 310641314王平平6785传媒 110641315陈治同8090传媒 210641316赵荣8490传媒 310641317徐清泉8595传媒 110641318邹伟斌7590传媒 210641319李文辉7895传媒 310641320魏楠8790传媒 110641321朱敏敏9195传媒 210641322丁志刚

6、6090传媒 310641323周开俊7090传媒 110641324吴俊8080传媒 210641325管峰8995传媒 310641326蒋佳佳8390传媒 110641327王奇安8880传媒 210641328张赛男8890传媒 310641329周玲玲8490传媒 110641330毛佳禹9195传媒 210641331赵金金8890传媒 310641332周天炯6790传媒 110641333卜英杰6785传媒 210641334杜宁波7490传媒 310641336侯蕴慧6280.传媒 110641337陆菊杰8590传媒 210641338王贞7985传媒 310641339颜

7、执栋9595四、 课程设计的考核方式及评分方法1考核方式课程设计结束时,在机房当场验收。2评分方法(1) 出勤率;(2) 课程设计运行结果;(3) 机房当场验收分数;(4) 课程设计报告分数。五、书写设计报告的要求(详细内容见“设计报告模板”)六、上交设计报告要求:1、 用 A4 纸打印出设计报告,在机房验收时将打印的设计报告交给验收老师评阅,如不需修改,当场交给班长;若需要修改,改后交给班长。在指定时间内由班长收齐设计报告后交给验收老师。2、 上传设计报告的电子版, 在指定的网址, 指定的文件夹内找到以你名字命名的文件夹,将你的设计报告和 .cpp 源文件(含有 .h )一并上传到该文件夹。

8、参考源代码 :Author:hujianfeiSinaweibo: 互联网的飞虫Date:201303011/ 由于看到本报告浏览量很大 但是 我没有上传源代码 , 所以有些说不过去 , 故花费一个小时自己写下了源代码 , 希望可以帮助你的课程设计 ./以下可以直接复制到Microsoft Visual C+ 6.0中运行 , 已经测试没有错误.#include #include typedef struct tagSTUDENT.char bj10;char xh9;char xm8;double qmchj;double pshchj;double zchj;STUDENT,*PSTUDE

9、NT;/ 只需要在这里增加人数算法不改变STUDENT std_s10 = 传媒 1,10641301,刘晓玮 ,65,80,0, 传媒 2,10641302,夏海霞 ,74, 85,0, 传媒 1,10641303,陈威 ,81,90,0, 传媒 2,10641304,周莉 ,87, 90,0, 传媒 3,10641305,贾君 ,75,90,0, 传媒 1,10641306,韩晓萍 ,58,80,0;typedef struct tagCLASSINFOchar bj10;double qmchj; /期末成绩double pshchj;/平时成绩double zchj; /总成绩/平均分

10、double qmchjpjf;double pshchjpjf;double zchjpjf;int xsrs; /学生人数/ 期末成绩最低分 最高分double maxfen;double minfen;CLASSINFO,*PCLASSINFO;.CLASSINFO classinfo3 = 传媒 1,0,0,0,0,0,0,0,0,100, 传媒 2,0,0,0,0,0,0,0,0,100, 传媒 3,0,0,0,0,0,0,0,0,100; /共三个班级/ 输出所有的学生信息/ 传入学生结构体数组的指针, 和学生的数量void ShowAllStudentInfo(PSTUDENT

11、pStudent , unsigned int iStudentNumber);/ 班级汇总/ 传入学生结构体数组的指针, 和学生的数量void ClassSummary(PSTUDENT pStudent , unsigned int iStudentNumber);/ 输出各班的期末成绩的最高分和最低分void ShowClassInfo(PCLASSINFO pClassInfo);/ 填充学生总成绩void CalculateStudentTotalGrade(PSTUDENT pStudent , unsigned int iStudentNumber);int main()prin

12、tf(_显示原始数据_n);ShowAllStudentInfo(std_s,6);printf(_填充总成绩 _n);CalculateStudentTotalGrade(std_s,6);ShowAllStudentInfo(std_s,6);printf(_按班级汇总 _n);ClassSummary(std_s , 6);ShowClassInfo(classinfo);return 0;/ 班级汇总/ 传入学生结构体数组的指针, 和学生的数量void ClassSummary(PSTUDENT pStudent , unsigned int iStudentNumber).int i

13、;for (i=0;i classinfo0.maxfen)classinfo0.maxfen = pStudenti.qmchj;if (pStudenti.qmchj classinfo1.maxfen)classinfo1.maxfen = pStudenti.qmchj;if (pStudenti.qmchj classinfo2.maxfen)classinfo2.maxfen = pStudenti.qmchj;if (pStudenti.qmchj classinfo2.minfen)classinfo2.minfen = pStudenti.qmchj;for (i=0;i3;

14、+i)classinfoi.pshchjpjf = classinfoi.pshchj / classinfoi.xsrs;classinfoi.qmchjpjf = classinfoi.qmchj / classinfoi.xsrs;classinfoi.zchjpjf = classinfoi.zchj / classinfoi.xsrs;/ 输出各班的期末成绩的最高分和最低分void ShowClassInfo(PCLASSINFO pClassInfo)int i;printf(%7s %16s %16s %16sn, 班级 , 期末成绩平均分 , 平时成绩平均分 , 总成绩平均分

15、);for (i=0;i3;+i)printf(%7s %13.2lf %13.2lf %13.2lfn,.pClassInfoi.bj,pClassInfoi.qmchjpjf,pClassInfoi.pshchjpjf,pClassInfoi.zchjpjf);printf(_n);printf(%7s %8s %8sn,班级 , 最高分 , 最低分 );/一共三个班级这里没有使用变量for (i=0; i 3;+i)printf(%7s %9.2lf %9.2lfn,pClassInfoi.bj,pClassInfoi.maxfen,pClassInfoi.minfen);/ 输出所有的

16、学生信息/ 传入学生结构体数组的指针, 和学生的数量void ShowAllStudentInfo(PSTUDENT pStudent , unsigned int iStudentNumber)int i;/使用 c 语言的格式输出比使用 c+的 更方便printf(%8s %8s %7s %5s %5s %5sn, 班级 , 学号 , 姓名 , 期末成绩 , 平时成绩 , 总成绩 );for (i=0;iiStudentNumber ; +i)printf(%8s %8s %7s %7.2lf %7.2lf %7.2lfn,pStudenti.bj,pStudenti.xh,pStudenti.xm,pStudenti.qmchj,pStudenti.pshchj,pStudenti.zchj);./ 填充学生总成绩void CalculateStudentTotalGrade(PSTUDENT pStudent , unsigned int iStudentNumber)unsigned int i;for (i=0;iiStudentNumber ;+i)pStudenti.zchj = 0.7* pStudenti.qmchj + pStudenti.pshchj * 0.3;.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1