c语言课程设计报告——学生证管理系统_第1页
c语言课程设计报告——学生证管理系统_第2页
c语言课程设计报告——学生证管理系统_第3页
c语言课程设计报告——学生证管理系统_第4页
c语言课程设计报告——学生证管理系统_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上高级语言程序设计课程设计报告学生证管理系统题 目:班 级: 软件工程学生学号: 5学生姓名: 罗国辉提交时间:2012年4月8日成 绩:优华南农业大学 信息学院一、需求分析1、系统概述:.随着时代的发展,教育事业的进步,如今的大学并不像过去那样,只有几百或上千人,一般的大学都有上万人之多,对于一个学生的信息如何去管理呢?有纸质版去保存明显是不实际的。这样不但占空间,更是容易丢失损坏,更重要是修改起来很麻烦。采用计算机来管理学生信息,如学生证信息,不但可避免以上所说的不足,尤其在信息查询方面有显著十分简单方便。我所介绍的是学生证管理系统。本系统具有添加、修改、删除、查询

2、、统计、显示、查看以往操作等功能。2、系统运行环境: (1)硬件环境: CPU:奔腾3以上内存:64M以上 显卡:集成显卡 硬盘:10M (2)软件环境: 操作系统:windows 98/me/2000/XP/vista DOS系统支持中文输出3、功能需求描述: (1)登录模块:若为首次使用本系统,则会允许注册一个管理员。若非首次使用本系统,则直接进入登陆界面。登陆时,管理员登陆需要用户名及密码,否则不用密码,直接进入。当然,管理员登陆与普通登陆后的功能是不一样的。普通登陆只有查询、统计、显示全部的功能。而管理员登陆则还有添加、删除、修改、查看以往操作的功能。管理员登陆输入密码时,显示的是*号

3、,输错和返回的,这样可以防止密码被盗。(2)添加模块:只允许管理员操作。可以逐个录入学生信息,当地一个学生信息录入名保存后,系统会问你是否继续录入学生信息。在录入一个学生信息过程中,如果发现前一项录错了或不想录入了,可以按“0”(零)键即可返回主菜单。(3)删除模块:只允许管理员操作。本模块有3种删除方式,分别是按学号删除、按班级名删除及按入学年份删除。可按用户需要选择删除方式,非常方便!(4)修改模块:只允许管理员操作。只能通过学号找到该学生信息,然后进行修改。(5)查询模块:本模块分为4种方式查询,有学号查询、姓名查询、班级查询、按入学年份查询。特别的,在按姓名查询及按学号查询时,只知道学

4、号中的连续几位数字,或只知道姓名中的一个或两个字也能查询出来,使查询得条件简单。 (6)统计模块:统计学生总人数,男生人数,女生人数,总平均年龄,男生平均年龄,女生平均年龄,个入学年份人数。 (7)显示模块:显示全校所有人的学生证信息。由于数据可能非常多,为了使所有数据都能显示出来。因此加了分页功能。(8)备份模块:仅管理员使用。将过去删除过的,添加过的,修改过的学生的原本信息保存起来,方便删除错误或修改错误时还原。二、总体设计1、总体开发思想:(1)主要的数据结构:系统对数据操作的主要数据结构是一个一维链表(如图),头指针head指向第一个节点。尾指针指向NULL。head NULL(2)数

5、据存贮方式:用文本文档(txt格式)将数据储存。当然,在存储数据之前会对其进行加密,使之变成乱码。以起保密功能。(3)使用的语言: C语言。 2、系统模块结构图:登陆模块添加模 块修改模 块删除模 块统计模 块显示模 块查询模 块查看操作模块按入学年份删除按班级名删除按学号删除按入学年份查询按班级名查询按姓名查询按学号查询清空所有被操作过的信息被修改过的信息被删除过的信息被添加过的信息3、模块设计:以下为各个功能模块的流程图 首次登 录模 块注册管理员输 入密 码检 验密 码非首次 添 加模 块输入所要添加的学生信息保存学生信息删除模块入学年份删除班级删除学号删除输入入学年份输入班级名输入学号

6、修 改模 块输入修改学号重新输入信息修改成功统 计模 块输出统计所得的信息,如校总人数,男女人数,总平均年龄,男女各平均年龄,各个级的学生人数显 示模 块 分页输出全校学生信息 查看以往操作模块查看被添加过的查看被删除过的查看被修改过的清空备份数据输出被删除过的学生信息输出被修改过的学生信息清空所有数据输出被添加过的学生信息三、功能实现1、主要函数:函数名及参数含义;专心-专注-专业(1)链表模块主要函数:void cjlb(); /创建新链表 struct student *insert1(struct student *head,struct student *stud); /按入学年份插

7、入节点 struct student *insert2(struct student *head,struct student *stud); /按班级名顺序插入节点 void rxnfpx(); /按入学年份排序 void bjpx(); /按班级排序 void tj(); / 添加 void sc(); /删除 void xhsc(); /按学号删除 void bjsc(); /按班级删除 void rxnfsc(); /按入学年份删除 void xg(); /修改 void cx(); /查询 void xhcx(); /学号查询 void xmcx(); /姓名查询 void bjcx

8、(); /班级查询 void rxnfcx(); /入学年份查询 void tjj(); /统计 void xs(); /显示 void cx1(); /非管理员查询 void xhcx1(); /非管理员学号查询 void xmcx1(); /非管理员姓名查询 void bjcx1(); /非管理员班级查询 void rxnfcx1(); /非管理员入学年份查询 void tjj1(); /非管理员统计 void xs1(); /非管理员显示 void cd1(); /管理员菜单 void cd2(); /学生菜单 void zc(); /注册管理员 void dl(); /管理员登陆 vo

9、id caozuo(); /操作 int main(); /主函数 (2)密码加密部分:有加密功能,但加密并非用一个特定函数实现,而是在打印到文本之前对信息进行加密,读取文本信息时进行解密。2、使用界面(1)登陆画面:(2)密码输入界面:(3)各菜单界面:(4)添加学生信息:(5)修改学生信息:(6)查询学生信息:(7)删除界面:(8)统计界面:(9)显示所有信息界面: (10)查看以往操作界面:四、总结一开始做的时候,根本不知道学生证管理系统是怎样的,更不知道它有什么功能。经过跟同学谈论并上网查找一些资料之后,基本知道学生证管理系统的功能。于是就根据功能去编代码。由于我们对链表知识掌握的不是

10、很透彻,所以呢,在编代码的时候遇到很多困难。有时候,很容易范逻辑错误,如本来head=NULL,但是很容易会这样if(head->rxnf= =a)这样就范逻辑错误了。而且这些错误是很难发现的,所以你会被卡很长时间。还有很多细节是要注意的。编完这个系统之后,我学会了很多注意细节的问题。经过长时间的努力之后,我终于把这个程序编完了,于是去提前答辩,结果过是过了,但是分数不是很理想,因为我只是实现了基本功能,整体来说,程序没有什么亮点。老师说可以添加一些新功能之后再次申请答辩。于是我就又把代码重新编了一次。我的新程序除了实现基本功能以外还添加了以下功能:(1) 分页功能:我们都遇到过这样的情

11、况,当我们要在编译运行框里打印很多行东西的时候,我们最后只能看到末尾的一小部分,而分页功能就很好的解决了这个问题。(2) 备份:是对被添加、删除、修改的学生信息进行记录保存,以备删除或修改错误时寻回的需要。(3) 在按学号查询、按姓名查询的时候,若只知道该学生的姓名中的一个或两个连续的字时,或只知道该学生学号的连续的几个数字,也可以进行查询,只是查询的结果可能不唯一。(4) 在添加一个学生的信息时,如果我不行录入这位同学的信息了,随时都可以退出,但有很多同学的是不能做到的,要么非法关闭,要么先把这个学生的信息录完才能进行其他功能。(5) 还有是一些代码的精简,在读取文件信息的时候,我只读取了一遍(定义一个头指针的全局变量便可实现),而之前我的代码是每个函数都要读取一遍。只读一遍就能少了很多不必要的操作。(6) 在注册函数和登录函数中,输入密码是,显示的是*号,并且输错了可以返回。重新编一次代码,我不仅对所学知识巩固了许多,还懂得了,在编一个系统的时候.有什么想法应尽量去实现。作为一个软件设计师,不但要是软件满足客户的需求,还要想到一些客户想不到的,这样才能成为一个优秀的软件设计师。评分表题目:学号

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论