ImageVerifierCode 换一换
格式:DOC , 页数:44 ,大小:516.50KB ,
资源ID:2773483      下载积分:3 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/2773483.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     索取发票    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(学生管理系统报告正文(生).doc)为本站上传会员【精***】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

学生管理系统报告正文(生).doc

1、目 录目 录第1章 引言11.1 设计目的11.2 设计目标11.3 研究思路21.4小组分工21.5 本章小结2第2章 总体设计32.1 系统需求32.2功能结构32.3 本章小结4第3章 详细设计53.1 学生信息定义53.2 功能模块53.3 本章小结6第4章 系统实现74.1系统主界面74.2 学生信息录入界面94.3 学生成绩管理界面104.4 学生成绩统计界面194.5 学生成绩查询界面274.6 本章小结32第5章 测试和调试335.1 测试和调试335.2 系统存在的问题335.3 收获及心得335.4 本章小结34参考文献35致 谢36I第1章 引言第1章 引言1.1 设计目

2、的目前,学校工作繁杂、资料重多,虽然各类管理信息系统已进入社会,但还未普及,而对于学生信息管理来说,目前还没有一套完整的、统一的系统。因此,开发一套适和大众的、兼容性好的学生管理系统是很有必要的。1.2 设计目标设计一个小型学生成绩管理系统。该系统将完成学生信息的查询、添加、修改,学生成绩的查询等功能。1.2.1 基本功能对学校学生信息管理的系统,主要划分为以下三个模块:录入:包括录入学生基本个人信息。管理:包括对学生成绩信息的修改,增加,删除。查询:按学号,姓名查询、输出学生所有信息。统计:按总分和平均分进行排名,以及统计及格人数,优秀的人数。学生成绩管理系统的功能结构图如图1-1所示。 图

3、1-1 学生成绩管理系统功能模块图1.2.2 扩展功能可以增加新学生的信息,统计及格人数和。1.3 研究思路首先确定要实现的功能,在我们的学生成绩管理系统中主要体现对学生成绩信息的操作如添加,查询,修改等;其次体现了学生对自己信息的查询,及浏览本人成绩信息的功能。在具体实现时,利用C+的输出格式显示操作的界面,利用函数实现相应的模块功能,再利用循环、选择可灵活进行重复操作。1.4小组分工本次实训由衡欣、魏千森、王跃霖、王晓峰我们四位同学一组,每位同学的具体分工如下:衡 欣:负责整个系统的框架以及整个界面的实现和学生成绩管理函数的实现以及各个函数的衔接;王晓峰:负责学生成绩信息录入函数的实现;王

4、跃霖:负责学生成绩统计函数的实现;魏千森:负责学生成绩查询函数的实现;1.5 本章小结本章主要对学生成绩管理系统以及研究思路进行了简单的介绍,为后面的工作做铺垫。41第2章 总体设计第2章 总体设计2.1 系统需求管理人员在学生成绩信息录入界面可以录入多位学生信息,录入完毕后可以在学生成绩管理界面完成修改、增加、查询学生成绩信息等功能。管理人员也可以在学生信息查询界面完成查询学生的基本信息的功能,以及在学生成绩统计界面查询学生成绩的总分排名和平均分排名以及学生及格的人数和优秀的人数。2.2功能结构通过前面的分析,可以得到学生成绩管理系统如图2-1所示。其功能如下:(1)录入学生信息 管理员输入

5、学生基本信息和成绩信息。(2)学生成绩操作 成绩管理界面,可以对学生成绩信息进行修改,增加,删除。(3)学生成绩统计 进入成绩统计界面,可以查询学生成绩的排名和及格,优秀人数信息。(4)学生成绩查询 进入查询界面可查询所有学生的成绩或按学号以及姓名查询学生成绩。 图2-1 学生成绩管理系统体系结构图2.3 本章小结本章主要从总体上对学生成绩管理系统的各功能模块进行了分析。第3章 详细设计第3章 详细设计3.1 学生信息定义本系统中主要考虑了学生的姓名、学号、性别、班级、科任老师、高等数学、大学英语、c+成绩等信息,利用结构体来定义每个学生的具体信息,利用结构体数组来存放多个学生的信息。学生结构

6、定义如下:struct stuent /定义一个结构体变量int number; /学生学号char name20; /学生姓名char sex20; /性别int grade; /班级char teacher20; /科任老师float math; /高等数学float english; /大学英语float c; /c+语言float java; /java成绩float sum; /总成绩float ave; /平均成绩stu200,a; /定义一个能容下200个学生信息的静态结构体数组以存放学生的相关信息,和一个空闲的静态结构体变量a,为后面的排名函数作准备。3.2 功能模块(1)主模

7、块这一模块是系统的主界面,在main()函数中包括以下几个函数,它们的函数名以及主要功能如下:void menu():主菜单功能。(2)学生信息录入,管理模块学生信息录入模块由input()函数实现,具体实现学生信息的录入。学生成绩管理模块由menu2()函数实现,具体实现学生成绩修改、增加、删除等操作通过调用三个函数完成,分别为:void revamp_student(); /主菜单2的学生成绩修改void increase_student(); /增加void delete_student(); /删除(3)学生成绩统计,查询模块学生成绩统计,查询模块由menu3()和menu4()函数实

8、现,可以统计学生的总成绩和平均成绩排名、及格和优秀人数。查询所有学生和按学号和姓名查询学生成绩信息。通过调用如下函数来实现:void rank_total_score(); /总成绩排名void rank_average_score(); /平均成绩排名int pass_score(float m); /及格人数int pass_total_score(float m); /总分及格人数int excellent_score(float m); /优秀人数int escellent_total_score(float m); /总分优秀人数void display(); /菜单4下的所有学生成

9、绩显示 void number_check(); /按姓名查询void name_check(); /按学号查询3.3 本章小结本章主要对学生成绩管理系统学生的结构定义、管理员的操作做简单描述,为下一章的具体实现做准备。第4章 系统实现第4章 系统实现4.1系统主界面在学生成绩管理系统主界面有五个选项,分别为学生成绩录入、学生成绩管理、学生成绩统计、学生成绩查询以及退出系统。运行效果如图4-1所示。图4-1 学生成绩管理系统主界面设计思路:利用do-while循环实现反复显示主界面各信息,利用cout语句输出主界面的各信息,利用switch-case实现选择操作,input函数实现学生信息录入

10、,menu2()函数实现学生成绩管理,利用menu3()函数实现学生成绩统计,利用menu4()函数实现学生成绩查询,利用exit()函数实现退出系统。核心代码如下:void menu() /定义一个主界面函数docoutntt-学 生 成 绩 管 理 系 统-endln;couttt 1. 学生成绩录入 endln;couttt 2. 学生成绩管理 endln;couttt 3. 学生成绩统计 endln;couttt 4. 学生成绩查询 endln;couttt 0. 退出系统 endln;couttt 请输入0-4之间的任意一数字(仅限数字) endl;coutchoose;switch

11、(choose) case 1: input(); break; /录入学生信息 case 2: menu2(); break; /学生成绩管理,包括修改、增加、删除 case 3: menu3(); break; /学生成绩统计,包括总分排名、及格人数等 case 4: menu4(); break; /学生成绩查询,按姓名,学号 case 0: exit(); break; /退出系统 default:coutt对不起,输入有误endl; break;while(choose!=0);4.2 学生信息录入界面在学生成绩录入界面里管理员可以进行学生信息的录入,运行效果如图4-2所示。图4-2

12、 学生信息录入界面设计思路:利用for循环可以一次性输入多个学生信息,在for循环内利用cout和cin语句实现根据提示录入学生信息。核心代码如下:void input() /定义一个学生录入函数coutn; /学生数量for(i=0;in;i+)coutn请输入第i+1个学生信息:endl; /输入信息 cout学号:stui.number; cout姓名:stui.name; cout性别:stui.sex; cout班级:stui.grade;cout科任老师:stui.teacher; cout高等数学成绩:stui.math; cout大学英语成绩:stui.english; cou

13、tc+语言成绩:stui.c;coutjava成绩:stui.java; stui.sum=stui.math+stui.english+stui.c+stui.java; /总分计算 stui.ave=(stui.sum)/4.0; /平均分计算 coutn输入成功,0 返回主界面endl; coutpress; switch(press) /选择操作 case 0 : break; 4.3 学生成绩管理界面在学生信息操作界面有四个选项,分别为学生成绩修改、学生成绩、学生成绩删除以及返回到学生成绩管理系统主界面。运行效果如图4-3所示。图4-3 学生成绩管理界面设计思路:利用do-while

14、循环反复显示这一子界面的信息,利用cout语句输出信息,利用revamp_student()函数实现学生成绩的修改,increase_student()函数实现学生成绩的增加,delete_student()函数实现新学成绩的删除。核心代码如下:void menu2() /主界面下2号菜单函数 do coutntt-学 生 成 绩 管 理-endln; couttt 1. 学生成绩修改 endln; couttt 2. 学生成绩增加 endln; couttt 3. 学生成绩删除 endln; couttt 4. 返回主界面 endln; couttt 请输入1-4之间的任意一数字(仅限数字)

15、 endl; coutchoose; switch(choose) case 1: revamp_student();break; /学生信息修改 case 2: increase_student();break; /学生信息增加 case 3: delete_student();break; /学生成绩删除 case 4: menu();break; /返回主界面 default:coutt对不起,输入有误endl; break;while(choose!=0);4.3.1学生成绩修改界面在学生成绩管理界面可以按照姓名对学生成绩进行修改,运行效果如图4-4所示。图4-4 学生成绩修改界面设计

16、思路:利用for循环语句以及if条件语句实现按照姓名匹配修改,利用cout语句实现信息的输出。核心代码如下:void revamp_student() char rs20; int choose_2_1; cout请输入你想修改的学生姓名:rs; for(i=0;in;i+)if(strcmp(rs,stui.name)=0) cout你要修改的学生信息如下:endlendl; cout学号:stui.numberendl; cout姓名:stui.nameendl; cout性别:stui.sexendl; cout班级:stui.gradeendl; cout科任教师:stui.teach

17、erendl; cout高等数学成绩:stui.mathendl; cout大学英语成绩:stui.englishendl; coutc+语言成绩:stui.cendl; coutjava成绩:stui.javaendl; cout总分数:stui.sumendl; cout平均成绩:stui.aveendlendl; cout确认修改请按1,返回请按2:endlchoose_2_1;switch(choose_2_1) case 1: cout学号:stui.number; cout姓名:stui.name; cout性别:stui.sex; cout班级:stui.grade; cout科

18、任老师:stui.teacher; cout高等数学成绩:stui.math; cout大学英语成绩:stui.english; coutc+语言成绩:stui.c; coutjava成绩:stui.java; stui.sum=stui.math+stui.english+stui.c+stui.java; stui.ave=(stui.sum)/4.0; cout修改成功。endl; break; case 2: menu2(); break; 4.3.2 学生成绩增加界面在学生成绩增加界面可以对学生成绩进行增加。运行效果如图4-5。图4-5 学生成绩增加界面设计思路:定义一个i_s来保存

19、要增加的学生人数,利用for循环来录入新增加的学生成绩信息,并使n=n+i_s确保整个数组中元素个数的正确性。核心代码如下:void increase_student() cout请输入你想增加的学生人数:i_s; for(i=n;in+i_s;i+) cout请输入你要增加的学生的数据:endl;coutn请输入第i+1个学生信息:endl; /输入信息 cout学号:stui.number;cout姓名:stui.name;cout性别:stui.sex;cout班级:stui.grade;cout科任老师:stui.teacher;cout高等数学成绩:stui.math;cout大学英

20、语成绩:stui.english;coutc+语言成绩:stui.c;coutjava成绩:stui.java;stui.sum=stui.math+stui.english+stui.c+stui.java; /总分计算stui.ave=(stui.sum)/4.0; /平均分计算 n=n+i_s; 4.3.3 学生成绩删除界面在学生信息删除界面管理员可以删除学生的信息,运行效果如图4-6所示。图4-6 学生成绩删除界面设计思路:利用if和for循环来匹配要删除的学生的姓名然后利用逐个替换法用要删除的对象的后一个元素替换前一个元素,在匹配找到要删除的对象前利用cout语句以及cin语句来实现

21、根据提示要删除的学生的信息。利用switch-case确认删除后n自减1,以保证后续查询所有学生成绩信息的正确。核心代码如下:void delete_student() char ds20;int choose_2_3; cout请输入你想要删除的学生姓名:ds; for(i=0;in;i+)if(strcmp(ds,stui.name)=0)cout你要删除的学生信息如下:endlendl;cout学号:stui.numberendl; cout姓名:stui.nameendl; cout性别:stui.sexendl; cout班级:stui.gradeendl; cout科任教师:stu

22、i.teacherendl; cout高等数学成绩:stui.mathendl; cout大学英语成绩:stui.englishendl; coutc+语言成绩:stui.cendl; coutjava成绩:stui.javaendl; cout总分数:stui.sumendl; cout平均成绩:stui.aveendlendl;cout确认删除请按1,返回请按2:endlchoose_2_3;switch(choose_2_3) case 1: stui=stui+1;n=n-1; cout删除成功。endl; break; case 2: menu2(); break; 4.4 学生成绩

23、统计界面在学生成绩统计界面可以统计学生总分和平均分的排名,也可以统计成绩及格和优秀的学生人数。运行效果如图4-7所示。图4-7 学生成绩统计界面分析:利用do-while语句实现反复显示学生成绩统计界面,利用switch-case语句来选择需要统计的内容。利用rank_total_score()函数实现总分的排名,利用rank_average_score()实现平均分的排名,利用pass_score(float m)函数统计及格人数,利用pass_total_score(float m)统计总分及格人数,利用excellent_score(float m)和escellent_total_sc

24、ore(float m)函数实现统计优秀人数和总分优秀人数。核心代码如下:void menu3() do coutntt-学 生 成 绩 统 计-endln;couttt 1. 总 分 排 名 endln;couttt 2. 平均成绩排名 endln;couttt 3. 及 格 人 数 endln;couttt 4. 优 秀 人 数 endln;couttt 5. 返 回 主界面 endln;couttt 请输入1-5之间的任意一数字(仅限数字) endl;coutchoose;switch(choose) case 1: rank_total_score();break; /总分排名 cas

25、e 2: rank_average_score();break; /平均成绩排名 case 3: menu3_3();break; /及格人数 case 4: menu3_4();break; /优秀人数 case 5: menu();break; /返回主界面 default:coutt对不起,输入有误endl; break;while(choose!=0); 4.4.1总分排名,平均成绩排名设计思路:定义一个新的循环变量j然后利用双循环和if语句对前后成绩进行对比,利用开始定义的空闲的结构体a存放要调换的成绩,然后再把成绩高的和成绩低的作调换。核心代码如下:void rank_total_

26、score()int j;for(j=0;jn-1;j+) for(i=0;in;i+) if(stui.sum=stui+1.sum) a=stui; stui=stui+1; stui+1=a; for(i=0;in;i+) cout第i+1名;endl;cout姓名:stui.nameendl;cout总成绩:stui.sumendlendl;void rank_average_score()int j;for(j=0;jn-1;j+) for(i=0;in;i+) if(stui.ave=stui+1.ave) a=stui; stui=stui+1; stui+1=a; for(i=

27、0;in;i+) cout第i+1名;endl;cout姓名:stui.nameendl;cout平均分:stui.aveendl=60) cout姓名;stui.nameendl;cout分数:mendl=240) cout姓名;stui.nameendl; cout分数:mendl=90) cout姓名;stui.nameendl;cout分数:mendl=360) cout姓名;stui.nameendl; cout分数:mendlendl; return 1;return 0;调用函数如下(大都一致只出示一个做代表):void menu3_3() do coutntt-及 格 人 数

28、统 计-endln;couttt 1. 高 等 数 学 endln;couttt 2. 大 学 英 语 endln;couttt 3. c+ 语 言 endln;couttt 4. java 成 绩 endln;couttt 5. 总 成 绩 endln; couttt 6. 平 均 成 绩 endln;couttt 7. 返 回 上一页 endln; couttt 8. 返 回 主界面 endln;couttt 请输入1-8之间的任意一数字(仅限数字) endl;coutchoose;switch(choose) case 1: coutendl及格的学生:endl; num=0; for(

29、i=0;in;i+) num=num+pass_score(stui.math); cout及格人数num; break; /高等数学 case 2: coutendl及格的学生:endl; num=0; for(i=0;in;i+) num=num+pass_score(stui.english); cout及格人数num; break; /大学英语 case 3: coutendl及格的学生:endl; num=0; for(i=0;in;i+) num=num+pass_score(stui.c); cout及格人数num; break; /c+语言 case 4: num=0; coutendl及格的学生:endl; for(i=0;in;i+) num=num+pass_score(stui.java); cout及格人数num; break; /java成绩 case 5: num=0; coutendl及格的学生:endl; for(i=0;in;i+) num=num+pass_total_score(stui.sum); cout及格人数num; break; /总成绩 case 6: num=0; coutendl及格的学生:endl; for(i=0;in;i+) num=num+pass_s

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服