- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
编号: 00
一、题目:
设置成绩等级
二、设计思路
1、总体设计
分析程序的功能
输入100名以内的学生信息,计算学生各科成绩总和和学生成绩等级,然后按分数由高到低输出,再根据输入顺序输出学生成绩。
系统总体结构:
输出学生等级的过程有这几部分构成:输入学生人数,输入学生信息,按总分排序,计算成绩等级,按分由高到低输出学生成绩,按输入顺序输出学生成绩。总
共六个步骤:
模块
函数名称
输入学生信息按总分排序
Struct studentsort
计算成绩等级
lev
输入学生人数5
通过结构体structstudent结构数组stu[i]输入学生信息
NUM
S1
S2
S3
S4
112093
90
80
75
83
112094
65
75
85
85
112095
80
90
95
87
112096
86
87
96
67
112097
81
82
83
89
计算4门学科的学习成绩总和然后用排序函数sort排序(需要调用函数),排序完了之后根据各等级人数所占的百分比计算出人数(需四舍五入)用lev函数计算出成绩等级(需调用函数)。
通过输入流输出按分数由于高到低的输出学生成绩。
通过第二个结构数组stu1[i],将结构数组stu[i]中的成绩等级赋给stu1[i],之后通过输出流输出按输入顺序输出学生成绩。
第1页/共8页
编号: 00
最 后 输 出 结 果 如 图 所 示 :
2、各功能模块的设计:说明各功能模块的实现方法1)结构体structstudent模块
先定义结构体类型student,然后将学生信息NUMS1S2S3S4数据汇集起来,
并输入
NUM
S1
S2
S3
S4
112093
90
80
75
83
112094
65
75
85
85
112095
80
90
95
87
112096
86
87
96
67
112097
81
82
83
89。、
通过该结构体structstudent定义了两个结构体数组stu[i]和stu1[i]。结构体数组stu[i]存储学生信息和用来通过计算总分排序并计算出学生的成绩等级,结构数组stu1[i]存储学生成绩和用来实现记录输入的学生信息并接受stu[i].flag赋值记录学生成绩等级。
代码参见structstudent结构体。
第2页/共8页
编号: 00
排序函数sort模块
先声明sort函数,通过stu[i].sum累加器计算出学生四门课的成绩总和,然后调用sort函数对学生的总体成绩排序,在主函数后面定义sort函数,其函数中采用了冒泡法排序的。
代码参见sort函数。
设置成绩等级函数lev模块
先声明成绩等级函数lev,然后在学生成绩排序完成之后,进行成绩等级计算,调用lev函数,计算出’A’’B’’C’’D’。在主函数之后定义lev函数,主要是四舍五入的计算,设定了两个数据类型,intxdouble y,x代表学生人数,y代表各成绩等级人数所占总体的百分比数。
if(x*y-int(x*y)=0.5)returnint(x*y)+1;
else
returnint(x*y);从而实现四舍五入代码参见lev函数。
创新设计部分
扩大了学生的学科数目,由三科扩大到了四科并且自学了文件操作,将学生人数和信息存入一个文本文件,通过复制,在输入时通过粘贴就解决了。
3、设计中的主要困难及解决方案
困难(1)自学结构体类型、结构数字来输入学生成绩的信息(学号、三门课成绩)。
困难(2)按总分排序学生信息,再根据各等级所占人数比例输出学生等级,并且算出的人数要四舍五入。
困难(3)先按总分由高到低输出学生成绩,之后再输出之前按输入的顺序输出学生成绩。
4、你所设计的程序最终完成的功能
说明你编制的程序能完成的功能
能够根据输入的学生信息计算出学生各科成绩的总和,并进行由高到低排序,和输出学生的成绩等级。也能输出按输入的顺序输出学生的成绩
准备的测试数据及运行结果
第3页/共8页
编号: 00
三程序清单
voidmain(){int
voidmain()
{
inti,j,k,l;intn;
cout请您输入学生人数endl;cinn;
student*q;q=stu1;
cout按照总分由高到低的输出学生成绩\n;//第一次输出
coutNUM
S1
S2
S3
S4
SUM
FLAGendl;
for(i=0;in;i++)
coutstu[i].num\tstu[i].s[0]\tstu[i].s[1]\tstu[i].s
[2]\tstu[i].s[3]
您可能关注的文档
- ug曲面建模实例教程茶壶建模步骤.docx
- ug数控铣编程操作子类型应用范围详细解释.docx
- UI开发第七篇之Android gallery实现图片的循环旋转.docx
- UI开发之Android gallery实现图片的循环旋转.docx
- UI自动化测试分析和总结.docx
- uml的一个系统设计文档.docx
- uml分析与设计文档格式参考.docx
- UML课程设计汽车租赁系统UML文档.docx
- uml课程实验报告.docx
- UNI 高手的10个好习惯.docx
- DB23_T 3866-2024冰上龙舟赛事组织服务规范.docx
- DB32 2163-2012 棉纱单位可比综合电耗限额及计算方法.docx
- DB32∕T 2429-2013 棉花田间生长发育观察记载规范.docx
- DB23_T 3820-2024 工业互联网综合平台数据质量管理规范.docx
- DB23_T 3474-2023非煤智慧矿山信息系统技术规范.docx
- DB3201_T 1106-2022 工程地质层划分技术规范.docx
- DB33T 2515-2022公共机构“零碳”管理与评价规范.docx
- DB3301_T 0415-2023 装修垃圾收运处置管理规范.docx
- DB3311/T 106―2019“丽水山居”民宿服务要求与评价规范.docx
- DB3201T 1127-2022 慈善捐赠受赠管理规范.docx
最近下载
- 铁塔室外光电一体箱(技术规范书)-.docx VIP
- 铂科磁材在太阳能逆变器的应用.pdf VIP
- 2025·上海浦东新区·二模智慧藏于“笨办法”:慢工出细活的真谛+审题立意及范文-备战2025年中考语文各地名校模考卷作文导写.docx VIP
- 经血源传播疾病的医院预防控制措施.docx VIP
- 安全操作规程(全套).doc VIP
- (word完整版)苏州工业园区合格证第四版参考题库答案.pdf VIP
- 2025年北京市通州区中考一模从“乐在其中”悟人生真谛”审题立意及范文-备战2025年中考语文各地名校模考卷作文导写.docx VIP
- 2021版 客户侧电能计量装置通用设计要求 第1部分 10kV用电客户电能计量装置.docx VIP
- Q∕SYCQ 4008-2022 工业用液化轻烃原料(打印版).pdf VIP
- 租房合同范本(完美打印版)6篇 .pdf VIP
文档评论(0)