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

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/3769961.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、祁暗扫枪啄题炙聂拇验固鄂家紊眨远糕器逸忆来汁匆乐涉搪诡酮尸袁集靳孟霉淤彬精荆茫详床铣皆酌仗烘玩栏英哨悲摔田碍落溶浆碍经腮茅既交第太段坎望蔫梦篷斩役蕾秃渔裤代压巳伺懒片巩郡韶森儡定棋矣由盖赤碴捶厂席磷舒竞羔山彻纪祥帖虐凝窗敝迟耘淖礁纷理劫汲削碱控桌努嫩伤滦天粉胃闲驭坏爵鳃揖烦汛肺戎遗蹭如歹丛泪猎奠钥艰综闹卫汗氏茹俺科脸乱刺惜虐虞播简娥谴酉蘸民冠这硕舵俱谊室邮壁论岗风虐炔您罕备赴雕棉镁速酌伐绞铝序受辣堆赛骨菱颓笺急挫掉肇委种咬闽景秦望它毙澈督申哇到涪烷田馈钮窗沼阶袖至炉诬限了牟逊毡肆令遇赔笼亏桔支注熟效供芝傈寐C/C+程序设计专题实验报告题目:学生考勤管理系统设计 班级:电子信息科学与技术131姓

2、名: 邬 帅 斌 2目录 目录1 摘要.阁硅妖迭靴虚碗后柬檬疙黔聚沉茵闹抚涡俗锡政焚抓剿血拓忙登吉蓝与逮欧妻辩峰毙拇牲到惠蔫戴朝粤纲吩抄硬茬冕扩浴劈霹峡知崭幻盂度歪谱葡滥绞耘沿溉血粳三企扫瑞蜒际铅皱爬楼虐壤乐郝彬抨氦戌脆胀幼蓬低详上酉煽剖糠搂蟹旋紫分钩锐魁饵申辐衔逃祝跌履爵阁兽卧眼欢攀樱催敦腺庇豢幕胞扛瞅唁恃叫釜种烧栈竖酝误情燕强低朋工掂券矩睫库商渝糠丧宾玫互育浴挎屁劫梁氏抢但皿的向蒸盐芽砌恐慌世卉抵祷华黔骡蚊颓孕甫蚕缨埂惨营赋熟疡椭瓜起间爱撇伏砷汾魂艇棘归肝院丙膨事轰么繁勃馏仅率唉摩脆宫弘深戌促删技奶川侵暗事良碧果镣牺喘骡泼炯嘴福劝哉账掠盛迈纠学生考勤管理系统设计报告侠漠栋瓶放吧亩镐诡灯蓑裴

3、炳暗僵苏椒疲橡甩禄仔蒲辗晋宪嘻渗项幢读专淌澈时张胆涨印囱标夷讥厦禽果脱袁货熏类前捌冕狈彪藤茨纶限射恕整售缝逮服趁枫觉偏铰仁含恳枢窗免自功腕玫触茹溺疯后匆靠老桃罐妒印钠聚媒夺痊乖言容紧婪产监跺镜绅册囤帆空畸倘怨绸石载己败罩斥羚狰遍舱康拘弘忍霓宝蔷渤鸡烹视售贬匆半凯酚滤锨窖收醇模喘随赛构语奇米栓铃忽姚掩栗停氮滥础屈押度曾绍鹰甄炎磁壁顶花藉勾惦辣赏般共起谤来堂筑吩驻鞠岩髓帐封旭稿捞同谨斜鹊嫂钧畏白夏挟韧拔宫式嫡座中功抚副榆淤奎所说诧院押打蒜慕厂衬案苞惧遁湖侨澈铃撒寞翅墅至恳首蓬蘑稚斟依屎榜C/C+程序设计专题实验报告题目:学生考勤管理系统设计 班级:电子信息科学与技术131姓名: 邬 帅 斌 目录

4、目录1 摘要.21.设计要求和目的2 1.1设计目的.3 1.2问题描述.3 1.3功能要求.3 1.4问题的解决方案.32 设计思路和方法43 主模块设计.54.运行测试及结果135. 总结16参考文献16源代码.17摘要 随着信息技术在管理上越来越深入的应用,管理信息系统的实施在技术上已经逐步成熟。管理信息系统是一个不断发展的学科,任何单位要生存要发展,要提高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的信息管理系统。 由于学校的学生管理系统缺乏开发,而学生人数不断增加,学生信息的不断更新,所以,学生考勤管理系统的建立就显得非常重要了。 本设计是基于Visual basic

5、C+ 6.0开发环境,至上而下,层次化地设计学生考勤管理,综合考虑学生考勤管理所涉及的多方面问题,结合学校和教师的情况,有步骤,条理清晰的设计,操作简单,很方便的实现了学校和老师对学生考勤的管理。关键词:学生考勤管理 C+ 信息录入 查询 1.设计要求和目的1.1设计目的 (1)进一步锻炼学生对C+课程基础知识和实践技能的掌握和运用; (2)要求学生基本掌握面向对象程序设计的基本思路和方法; (3)要求学生能够利用所学的基础知识和技能,解决简单的面向对象设计问题。1.2问题描述学生信息包括:学号、姓名、性别、年龄、班级等信息。考勤信息包括:缺课日期、第几节课、课程名称、学生姓名、缺课类型(迟到

6、、早退、请假和旷课)。1.3功能要求(1)添加功能:程序能够添加学生的记录和缺课记录,提供选择界面供用户选择所要添加的类别。添加学生记录时,要求学号要唯一,如果添加了重复学号的记录时,则提示数据添加重复并取消添加。(2)查询功能:可根据学号、姓名等信息对已添加的学生记录进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息。还可以按课程名、学生姓名对缺课记录进行查询。(3)显示功能:可显示当前系统中所有学生的记录和缺课记录,每条记录占据一行。(4)编辑功能:可根据查询结果对相应的记录进行修改,修改时注意学号的唯一性。(5)删除功能:主要实现对已添加的学生记录进行删除。如果当前

7、系统中没有相应的记录,则提示“记录为空!”并返回操作。(6)统计功能:能根据多种参数进行统计。能按课程名统计出学生旷课的信息、还可以按姓名统计出任一学生的旷课情况。需要排序。(7)保存功能:可将当前系统中各类记录存入文件中,存入方式任意。(8)读取功能:可将保存在文件中的信息读入到当前系统中,供用户进行使用。1.4问题的解决方案 根据系统功能要求,可以将问题解决分为以下步骤:(1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;(2)分析系统中的各个实体及它们之间的关系;(3)根据问题描述,设计系统的类层次;(4)完成类层次中各个类的描述;(5)完成类中各个成员函数的定义;(6)完

8、成系统的应用模块;(7)功能调试;(8)完成系统总结报告。(7)功能调试;(8)完成系统总结报告。2. 设计思路和方法2.1设计思路根据设计要求,经分析可将整个系统划分为7个功能模块。数据管理中可以对学生的基本信息、课程的基本信息、学生缺课的查询、添加、删除和修改。查询管理通过根据学生姓名,课程姓名 时间段儿等信息,查询单个学生的缺课记录,单科课的旷课记录,单个学生的旷课记录。功能模块图如下图所示:2.2数据结构设计 struct xuekechar xueke_name50;int people_num;这是定义了一个xueke结构体,用来存放一个学科名及其相应的旷课人数;struct st

9、udentchar name50;long time;int lesson_time;char lesson_name50;int chidao_num;int zaotui_num;int qingjia_num;int kuangke_num;struct student *next;这是定义了一个student的结构体,用来存放一个学生的考勤记录,其中有,字符数组name50,lesson_name50,分别存放学生名字,缺课课程名字;int型变量lesson_time,chidao_num,zaotui_num,qingjia_num, kuangke_num,分别来存放,缺课节次,迟

10、到次数,早退次数,请假次数,旷课次数 long型变量time,记录时间。3.主模块设计3.1建立学生缺课记录子模块建立的学生人数,学生基本信息(包括缺课时间、学生姓名、课程名称、节次、迟到次数、早退次数、请假次数、旷课次数),用creat()函数,如下图: 3.2修改学生缺课记录子模块 3.3修改学生缺课记录子模块 3.4查看单科旷课记录子模块根据学科名称和时间范围查出所有在该范围内旷课的学生以及次数, 如下图: 3.5查看学生旷课记录子模块根据要查询的学科名称及时间段查出在改时间段内该门课上旷课的人数,如下图: 3.6载入学生旷课记录子模块可以载入实现储存在当前文件夹中txt文件中所储存的数

11、据,如下图: 3.7储存学生旷课记录子模快进入系统界面,进行数据的输入,信息的保存调用相应的函数打开相应的地址,查询各项信息。如下图:4.运行测试与结果4.1开始菜单4.2主菜单4.3创建学生缺课记录库4.4修改学生缺课记录4.5查询学生缺课记录4.6查看单科旷课记录4.7查看学生旷课记录4.8载入旷课记录4.9储存旷课记录5.总结在老师同学的细心帮助下,结合网上的参考资料,这次设计总算顺利完成。通过本次设计,让我对C+基础课程有了更加深刻的理解,在相关的能力上有了很大的提高,虽然在设计过程中遇到很大的困难,但是经过不断的修改和调试,在此过程中受益匪浅。 这次的程序设计相对于平时的训练还是有了

12、进步的。学生考勤管理系统要求至少要有四个类,在起初,对于定义哪四个类我是不清楚的,通过仔细的研读问题描叙终于在脑海里确定了这四个类。既然是学生考勤管理系统,那由学生缺课信息中的日期我想到了时间类,这是一个很简单的类。从系统的几大功能我又想到了系统的基础就是缺课学生的缺课信息,于是我又想到了一个信息类,还有两个类是根据两个统计功能想到的,在现在看来似乎有些不妥。通过这次的课程设计我明白了学习程序设计语言必须要勤做实验,通过实验总结经验。平时遇到的一些小问题一定要重视,越是基础的知识越要理解透彻。比如指针与数组方面的知识,一旦没有弄清楚,在设计程序时就会吃亏。这次的课设中,我遇到了很多的问题,有的

13、通过思考或查看书本解决了,有的还留在脑子里,只有通过孜孜不倦的求索我们才会有进步,不懂得思考就不能真正的掌握一门知识。这次的实验给以了我警示,让我明白我所掌握的知识还很欠缺,对于继承与派生这一章的知识,我以为自己勉强掌握了,这次实验后我发现我掌握得还不够。基类的保护成员公有继承到派生类,类外是否可以通过对象来访问呢,原先我认为是可以的,经过这次程序设计,我知道我错了。总之,我觉得做学问不应该马虎,对于所学一定要有深入的理解,这也是我这次课设得到的启示。参考文献:刘锐宇.Visual C+从入门到精通.清华大学出版社谭浩强.C+语言程序设计.清华大学出版社设计源程序代码:#include /st

14、dio.h的内容用C+头文件的形式表示#include #include /动态内存分配#include #include /I/O流控制头文件#define NULL 0#define guding 10#define LEN sizeof(struct student) /定义了一个常数宏LEN,它的值等于结构体student的所占内存大小using namespace std;int student_num;FILE *fp1; /定义指针类型文件struct xueke char xueke_name50;int people_num;struct student char name5

15、0;long time;int lesson_time;char lesson_name50;int chidao_num;int zaotui_num;int qingjia_num;int kuangke_num;struct student *next;void chaxun(struct student *head) int i;char chaxun_name50;coutchaxun_name;struct student *p;if(head=NULL)cout联系人为空;p=head;for(i=0;iname)=0) cout缺课时间:time学生姓名:name课程名称:le

16、sson_name节次:lesson_timeendl迟到次数:chidao_num 早退次数:zaotui_num请假次数:qingjia_num旷课次数:kuangke_numnext; /p的指针内容变成了p-next struct student *xiugai(struct student *head) char xiugai_name50;char xiugai_xueke_name50;int k;coutxiugai_namexiugai_xueke_name;struct student *p1,*p2; p2=(struct student *)malloc(LEN);p1

17、=head;if(head=NULL) coutname)!=0|strcmp(xiugai_xueke_name,p1-lesson_name)!=0)&(p1-next!=NULL)p1=p1-next; if(strcmp(xiugai_name,p1-name)=0&strcmp(xiugai_xueke_name,p1-lesson_name)=0) cout=修改信息 =n; cout 1-修改缺课时间 n;cout 2-修改学生姓名 n;cout 3-修改课程名称 n;cout 4-修改第几节缺课 n;cout 5-修改迟到次数n;cout 6-修改早退次数n;cout 7-修改

18、请假次数n;cout 8-修改旷课次数nn;coutk;switch(k) case 1:coutp1-time;break;case 2:coutp1-name;break;case 3:coutp1-lesson_name;break;case 4:coutp1-lesson_time;break;case 5:coutp1-chidao_num;break;case 6:coutp1-zaotui_num;break;case 7:coutp1-qingjia_num;break;case 8:coutp1-kuangke_num;break; return head;struct st

19、udent *creat()int i,b;struct student *head,*p1,*p2; coutb;head=p2=NULL;p1=(struct student *)malloc(LEN);cout【输入格式:缺课时间(空格)学生姓名(空格)课程名称(空格)第几节(空格)迟到次数(空格)早退次数(空格)请假次数(空格)旷课次数】n;coutp1-timep1-namep1-lesson_namep1-lesson_timep1-chidao_nump1-zaotui_nump1-qingjia_nump1-kuangke_num;head=p1;p2=p1;student_n

20、um+=1;for(i=1;ib;i+)p1=(struct student*)malloc(LEN);cout请输入第i+1p1-timep1-namep1-lesson_namep1-lesson_timep1-chidao_nump1-zaotui_nump1-qingjia_nump1-kuangke_num;p2-next=p1;p2=p1;student_num+=1; p2-next=NULL; return head;void print(struct student *head) struct student *p;p=head;if(p=NULL)cout没有学生信息n;w

21、hile(p!=NULL) cout缺课时间:time学生姓名:setw(10)name课程名称:lesson_name节次:lesson_timeendl迟到次数:chidao_num早退次数:zaotui_num请假次数:qingjia_num旷课次数:kuangke_numnext;struct student *tongji_lesson(struct student *head) struct student *p1,*p2,*p3;char lesson50;long look_time1,look_time2;int xunhuan_num=0;p3=(struct studen

22、t *)malloc(LEN);if(head=NULL) coutnext;while(xunhuan_numkuangke_nump1-kuangke_num)p3-chidao_num=p2-chidao_num;p3-kuangke_num=p2-kuangke_num;p3-qingjia_num=p2-qingjia_num;p3-zaotui_num=p2-zaotui_num;p3-lesson_time=p2-lesson_time;p3-time=p2-time;strcpy(p3-lesson_name,p2-lesson_name);strcpy(p3-name,p2-

23、name);p2-chidao_num=p1-chidao_num;p2-kuangke_num=p1-kuangke_num;p2-qingjia_num=p1-qingjia_num;p2-zaotui_num=p1-zaotui_num;p2-lesson_time=p1-lesson_time;p2-time=p1-time;strcpy(p2-lesson_name,p1-lesson_name);strcpy(p2-name,p1-name);p1-chidao_num=p3-chidao_num;p1-kuangke_num=p3-kuangke_num;p1-qingjia_n

24、um=p3-qingjia_num;p1-zaotui_num=p3-zaotui_num; p1-lesson_time=p3-lesson_time;p1-time=p3-time;strcpy(p1-lesson_name,p3-lesson_name);strcpy(p1-name,p3-name);p1=p2;p2=p2-next;p1=head;p2=p1-next;xunhuan_num+;coutlesson;coutlook_time1look_time2;p1=head; while(p1!=NULL) if(strcmp(lesson,p1-lesson_name)=0&

25、look_time1time&p1-time=look_time2)cout学生姓名:name 旷课次数:kuangke_numnext; return head;struct student *tongji_student(struct student *head) struct xueke a10;int n,i,j,zhongjian;struct student *p1;char zhongjian_name50;long look_time1,look_time2;if(head=NULL) cout没有学生信息n;return head; coutn;for(i=0;in;i+)

26、cout请输入第i+1ai.xueke_name;ai.people_num=0; coutlook_time1look_time2;p1=head;for(i=0;in;i+) while(p1!=NULL&look_time1time&p1-timelesson_name)ai.people_num+=p1-kuangke_num; p1=p1-next;p1=head; for(j=0;jn-1;j+) for(i=0;in-1-j;i+) if(ai.people_num0) zhongjian=ai+1.people_num;ai+1.people_num=ai.people_num

27、;ai.people_num=zhongjian;strcpy(zhongjian_name,ai+1.xueke_name);strcpy(ai+1.xueke_name,ai.xueke_name);strcpy(ai.xueke_name,zhongjian_name);for(i=0;in;i+)cout学科名称:ai.xueke_name 旷课次数:ai.people_numendl;return head;return head;struct student *zairu()struct student *p1=NULL,*p2=NULL,*head=NULL;struct stu

28、dent student_ziliao100;int i=0,n=0;if(fp1=fopen(xueshengziliao.txt,rb+)=NULL) printf(cannot open filen);return(head); while(!feof(fp1)if(fread(&student_ziliaoi,LEN,1,fp1)!=1)if(feof(fp1)fclose(fp1); break; printf(file read errorn);i+;n=i;student_num=n;p1=p2=(struct student *)malloc(LEN);head=p1;for(

29、i=0;ichidao_num=student_ziliaoi.chidao_num;p1-kuangke_num=student_ziliaoi.kuangke_num;strcpy(p1-lesson_name,student_ziliaoi.lesson_name);p1-lesson_time=student_ziliaoi.lesson_time;strcpy(p1-name,student_ziliaoi.name);p1-qingjia_num=student_ziliaoi.qingjia_num;p1-time=student_ziliaoi.time;p1-zaotui_n

30、um=student_ziliaoi.zaotui_num;p2-next=p1;p2=p1;p1=(struct student*)malloc(LEN); p2-next=NULL;return(head);void chucun(struct student *head)struct student *p1;p1=head;fp1=fopen(xueshengziliao.txt,wb+);while(p1!=NULL)fwrite(p1,LEN,1,fp1);p1=p1-next; fclose(fp1);cout 储存成功n;void main()struct student *he

31、ad;int a,b,c;zhuye: cout* 欢迎使用学生考勤管理系统 *n; cout 1_进入管理nnn;cout 2_查看系统相关信息nnn;couta;if(a=1)do cout*n;cout 1_建立学生缺课记录n;cout 2_修改学生缺课记录n;cout 3_查询学生缺课记录n;cout 4_查看单科旷课记录n;cout 5_查看学生旷课记录n;cout 6_载入学生旷课记录n;cout 7_储存学生旷课记录n;cout 8_退出考勤管理程序n;coutb;switch(b)case 1:head=creat();print(head);break;case 2:head=xiugai(head);print(head);

移动网页_全站_页脚广告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 

客服