学生证信息管理系统

合集下载

【精品】学生信息管理系统需求分析

【精品】学生信息管理系统需求分析

【精品】学生信息管理系统需求分析一、项目背景现今社会,教育已经成为了人们成长的重要途径。

随着社会的快速发展和科技的不断更新,学生信息管理系统也应运而生。

目前,学校信息化建设成为了各大学校的重点工作,学生信息管理系统也越来越受到教育机构的重视。

二、系统概述学生信息管理系统(Student Information Management System,简称SIMS),是一种基于互联网的管理系统,旨在提供学生信息的存储、管理、修改和查询功能。

该系统主要用于教育机构,所收集的信息包括学生的基本信息、学业成绩、考勤情况、学生证明材料等。

学生信息管理系统能够提高教育机构对学生管理的效率和准确性,以及为学生提供各种信息服务,方便学生和家长更好地了解学生的情况和发展。

三、系统功能1.基本信息管理学生信息管理系统可以存储学生的基本信息,包括姓名、性别、出生日期、身份证号码、联系电话、家庭住址等。

同时,支持学生基本信息的增、删、改、查功能。

2.学业成绩管理学生信息管理系统可以存储学生的各科成绩,包括平时成绩、考试成绩、期末成绩等,并且还能够将不同学期的成绩进行汇总,形成整张成绩单。

同时,系统支持对学生成绩的统计分析和查询,可以方便教员和学生对考试成绩的了解和评估。

3.考勤管理学生信息管理系统可以记录每个学生的考勤情况,包括出勤、请假、缺勤等情况,并将每个学期的考勤情况进行汇总和展示。

同时,系统也支持教员对考勤情况进行查询和管理,方便教员了解每个学生的学习态度和表现。

4.学生证明材料管理学生信息管理系统可以存储学生的证明材料,包括学生证、学籍证明、成绩单等。

同时,系统支持学生和家长在线申请这些证明材料,方便了学生的使用和办理。

5.数据统计与分析学生信息管理系统可以对各种数据进行汇总、统计和分析,比如学生人数、男女比例、班级成绩分布、考勤情况等。

同时,系统还可以生成各类教学报表,为教育管理和决策提供数据支持。

四、需求分析1.安全性由于学生信息管理系统主要用于存储和管理学生的个人信息,所以系统的安全性非常重要。

山东省学生信息管理系统使用说明

山东省学生信息管理系统使用说明

山东省学生信息管理系统使用说明系统菜单如图所示,第一项是“系统设置”菜单,二至六项是学籍管理模块菜单(依次为新生建籍、学籍异动、信息查询、报表打印、学籍维护),第七项是考试管理模块菜单,第八项是体质健康测试模块菜单,第九项是综合素质评价模块菜单,第十项是“系统帮助”菜单。

1、“系统设置”菜单主管单位----主管单位信息模型,通过设置不同的主管单位[省、市、县区],系统可以屏蔽掉当前数据库中指定单位以外的所有数据,实现在不同市、县区之间自由切换,数据库工作区域也相应进行切换;通过该模型中的“数据维护”功能可以实现主管单位信息的备份、上报、导入等要求;通过“统计报表”功能,可以按不同层次范围的主管单位打印代码表(或通讯录)。

该模型主要包括主管单位代码、主管单位名称、所在地行政区划码、主管单位地址、邮政编码、学籍管理科室、联系人、联系电话等信息(首次使用需要各市、县区教育行政部门补充完整相关信息),其中:主管单位代码:由2位省(区/市)代码+2位市(地)代码+2位县(市/区)代码,共6位数字组成。

省教育厅负责编定的学校主管部门的唯一标识,不得进行更改。

默认等同于各单位的行政区划代码;无行政区划代码的(如市直、相对独立管理的各类开发区等),增设主管单位代码时由市级教育行政部门上报省教育厅,由省教育厅参照编排规则定义新的代码使用。

主管单位名称:指学校主管单位标准名称,与公章一致。

所在地行政区划码:参见《中华人民共和国行政区划代码》。

主管单位地址:指包括省(区、市)/地(市、区)/县(市、区、旗)/乡(镇)/街(村)的地址。

学校信息----学校信息模型,通过设置不同的县区级主管单位,实现所属学校的集中管理;通过“学校列表”可以筛选不同类别的学校;通过该模型中的“数据维护”功能可以实现不同范围的学校信息的备份、上报、导入等要求;通过“统计报表”功能,可以对不同范围、不同类别的学校代码表进行打印。

该模型包括学校代码、学校名称、所属主管单位代码和名称、学校地址、邮政编码、联系电话、学校办别、学校类别、所在地区类别、主教学语言、所在地行政区划代码和名称、学校达标等级、学校运行状况等信息(首次使用需要各市、县区教育行政部门补充完整相关信息),其中:学校代码:由6位主管单位代码+4位学校序号,共10位数字组成。

证件管理系统

证件管理系统

证件管理系统在当今社会,各种证件在我们的生活和工作中扮演着至关重要的角色。

无论是身份证、护照、驾驶证,还是学历证书、职业资格证书等,它们不仅是个人身份和能力的证明,也是社会管理和运作的重要依据。

随着信息量的不断增加和管理要求的日益提高,传统的证件管理方式已经难以满足需求,证件管理系统应运而生。

证件管理系统是一种利用信息技术对各类证件进行高效、准确、安全管理的工具。

它通过数字化、信息化的手段,将证件的信息进行采集、存储、处理和分析,实现了证件管理的自动化和规范化。

首先,证件管理系统能够实现证件信息的快速采集。

在传统的管理方式中,工作人员需要手动录入证件信息,这不仅效率低下,而且容易出错。

而证件管理系统通常配备了先进的扫描设备和识别技术,能够快速、准确地将证件上的文字、图像等信息转化为电子数据,并自动录入系统中。

这大大提高了信息采集的效率和准确性,节省了大量的人力和时间成本。

其次,该系统能够对证件信息进行有效的存储和管理。

系统会将采集到的证件信息按照一定的规则和格式进行存储,建立起完善的证件数据库。

这些数据库可以根据不同的需求进行分类和索引,方便用户快速查找和检索所需的证件信息。

同时,系统还具备数据备份和恢复功能,确保证件信息的安全性和可靠性。

再者,证件管理系统能够对证件的有效期进行实时监控和提醒。

对于一些具有有效期的证件,如驾驶证、护照等,系统可以设置提醒功能,在证件即将到期前自动向相关人员发送提醒通知,以便及时办理证件的续期或更换手续。

这有助于避免因证件过期而带来的不必要的麻烦和损失。

此外,该系统还具备强大的统计分析功能。

它可以对证件的类型、数量、分布等情况进行统计分析,为管理决策提供有力的数据支持。

例如,通过对某一地区职业资格证书的统计分析,可以了解该地区的人才结构和职业技能水平,为制定相关的人才政策和培训计划提供参考依据。

在实际应用中,证件管理系统广泛应用于政府部门、企事业单位、学校等各个领域。

学生管理信息系统需求规格说明书

学生管理信息系统需求规格说明书

文档编号:00版本号:V1.0文档名称:需求规格说明书项目名称:学生信息管理系统项目负责人:编写:校对:审核:批准:开发单位:08计算机科学与技术软件开发第六组需求规格说明(Requirements Specification)一.引言1.编写目的学校学生管理信息系统是针对学校人事处的大量业务处理工作而开发的管理软件,是典型的管理信息系统(Management Information System)。

它是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,它能够为用户提供充足的信息和快捷的查询手段。

能有效的帮助学校和老师掌握学生的情况,为学生提供成绩跟课程方面的查询。

通过该系统,用户可以查看学生的基本资料、学习成绩等各方面的资料,能够方便的了解学生总体情况。

该管理系统为用户提供了一些简单的数据查询、输出各种信息等。

学生用户通过输入学生基本信息、课程基本信息等,由系统自行生成相应的数据以供学生查询,另外人事处的管理用户还可以对这些基本信息进行更新和删除, 学校学生管理信息系统力求给用户方便快捷的途径去管理这些繁琐的数据。

学生信息管理统统的功能需求共有一下几个方面:(1) 学生信息管理:管理所有学生的基本信息,包括添加、修改、删除等;可以根据各种条件查询出需要的信息。

(2)课程信息管理:管理所有课程的基本信息,包括添加、修改、删除等;可以根据各种条件查询出需要的信息。

(3)选课与成绩管理:根据学号进行选课,登记所选课程的成绩;可以根据学号查询出选课信息与成绩。

2.项目背景本系统是是郑州华信学院,目前使用的是手工记录学生的信息。

随着学校规模的增大以及新增学生选课的影响,手工方式已经无法记录学生的实时信息,该学校决定用一套新的学生信息管理系统软件,并要求满足以下条件:(1)学生卡使用磁卡及防伪标志,学生卡如有遗失,学校方面可以补办、原资料需重新录入。

(2)学生不能转借给他人使用,如违反给予相应处罚。

i家校业务介绍

i家校业务介绍

i家校业务介绍
“i家校”校园信息管理系统
⼀、系统简介
“i家校”校园信息管理系统是基于电⼦学⽣证的⼀款校园信息化产品,通过电⼦学⽣证、学校各类终端,借助⽆线⽹络通讯技术,将学校⽇常管理与家校沟通紧密结合,旨在加强校园安全管理、提升学校形象和信息化⽔平、进⼀步完善家校联系。

⼆、功能说明
门卫安全管理
1、通过学⽣进出校门的刷卡考勤实现准确记录学⽣进出校时间,⽅便学校对于学⽣出⼊校的即时数据管理与监控;
2、学⽣出⼊校刷卡信息可即时短信通知家长,便于家长知晓孩⼦出⼊校动态;
亲情电话功能
1、学⽣通过电⼦学⽣证在校内的电话终端上免费拨打预设的三个亲情号码;
2、每次通话时间为180秒,每⽉不限通话总时长;
3、家长拨打客服热线400-115-1115可对亲情电话进⾏设置与更改;
4、亲情电话终端只能呼出,⽆法呼⼊,不会影响正常教学秩序。

三、资费说明
硬件:
校车刷卡管理系统(每台刷卡器押⾦1000元)、门卫安全管理系统(学⽣电⼦考勤系统)及亲情电话系统免费为学校搭建;
卡品:
为学⽣所配的⾸张电⼦学⽣证只收取⼯本费,若学⽣参加增值业务,则收取的⾸张电⼦学⽣证的⼯本费通过话费⽅式返给学⽣家长。

学⽣丢卡后补卡只收取⼯本费⽤;
增值服务:
平安短信+亲情电话5元/⽉/户(只从家长第⼀联系⼈⼿机上每⽉扣除此功能使⽤费)
门卫处⽆线刷卡器
亲情话机。

学生信息管理系统综合测评使用演示

学生信息管理系统综合测评使用演示
学生信息管理系统 综合测评使用演示
登录方式
(1)输入直接访问地址: /sms/ (2)其他访问方式
– 华工主页-办公门户(右上角)-学生管理系 统 – 华工主页(左下角) -服务指南-学生管理系 统
(3)综合测评时建议用IE9及以上的浏览器, 或者火狐、谷歌浏览器
学生用户—德育测评
• 查看指定学年度本班同学的德育测评情况 • 进行德育自评和德育加扣分
点击进入自评
点击进入德育加扣分
学生用户—智育测评
• 点击“智育测评列表”中个人对应的“总分”链接,检查个 人的课程成绩;

如果发现成绩有错误,请联系教务处进行修改。目前教务处 的成绩与学生信息系统对接,教务修改成绩后,第二天会自 动同步学生信息系统。
学生用户常见问题(七)
9、学生可以修改德育、智育、文体加扣分吗,什么情况下可以 修改? 答:当学生增加的加扣分未被班级和学院审核时,即是“未 审核”状态,就可以点击“修改”链接进去修改。如果已经 被班级或者学院审核通过,那么先要班级用户、学院用户撤 销审核,返回“未审核”状态学生才可进行修改。
学生用户常见问题(八)
班级用户—德育测评
• 查看指定学年度本班同学的德育测评情况
• 对本班学生的德育情况进行班级评议(已完成学院评 议的测评班级不能再评议)
• 对本班学生的德育加分、扣分情况进行班级算分和审 核
填写个人鉴定
学生用户—获奖与处罚
学生的获奖与处罚记录栏目主要管理综合测评的加分和 扣分项; 学生可增加、修改和删除本人的获奖与处罚记录,但是 已经审核通过的信息则不能删除和修改。如要修改,需 要班级用户或学院用户撤销审核。
学生用户常见问题(一)
1、学生登录验证失败,会提示用户名或者密码错误。 答:这是账号问题,请根据提示联系网络中心,电话为 87110228。

高等院校学籍管理信息系统

高等院校学籍管理信息系统

高等院校学籍管理信息系统摘要:学校学籍管理信息系统是根据普通高校学籍管理的实际情况而设计的一套应用软件。

该系统具有直观的界面,良好的安全性和可扩展性,各种功能基本上满足了进一步深化教育改革、提高教育管理效率的需求。

系统采用oracle数据库和delphi作为开发工具。

关键词:学籍管理;delphi;oracle;数据库一、系统需求分析随着计算机技术的飞速发展,计算机在各行各业中应用的普及,利用计算机实现学生学籍管理是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都是至关重要的。

用计算机来作学生学籍管理比人工管理更能体现查询快捷、保密性好、安全性高、存储量大、寿命长、成本低和效率高等优点;同时更便于管理和操作。

二、系统开发平台简介根据我们对学籍管理系统和数据库的需求分析,依据此系统符合规定的特点,考虑到界面的美观和直接,以及数据库的可行性和稳定性,我们对开发平台作了如下选择:1.oracle8oracle8是一个面向internet计算环境的数据库,它改变了信息管理和访问的方式。

oracle8将新的特性融入到了传统的oracle服务器之中,从而成为一个面向web信息管理的数据库。

oracle8支持web高级应用所需要的多媒体数据,支持web繁忙站点不断增长的负载需求。

oracle8是唯一一个拥有集成式web信息管理工具的数据库。

oracle正在推动java成为下一代应用的标准,它在各个层次,包括oracle8服务器内的java vm,均支持java。

oracle8将强大的新型功能引入到了联机事务处理(oltp)和数据仓库应用之中。

oracle8还对oracle数据服务器的几乎所有方面给予了增强,全面改进了质量、可用性、性能、可管理性、多媒体数据类型支持和复制功能。

2.delphi 7delphi是inprise公司开发的一个优秀的可视化软件系统,是一个可视化的rad(rapid application development,快速应用程序开发)工具,使用了microsoft windows图形用户界面的许多先进特性和设计思想,采用了弹性可重复利用的完整的面向对象程序语言(objectoriented lanuae)、当今世界上最快的编辑器、最为领先的数据库技术。

i家校业务介绍资料讲解

i家校业务介绍资料讲解

i家校业务介绍
“i家校”校园信息管理系统
一、系统简介
“i家校”校园信息管理系统是基于电子学生证的一款校园信息化产品,通过电子学生证、学校各类终端,借助无线网络通讯技术,将学校日常管理与家校沟通紧密结合,旨在加强校园安全管理、提升学校形象和信息化水平、进一步完善家校联系。

二、功能说明
◆门卫安全管理
1、通过学生进出校门的刷卡考勤实现准确记录学生进出校时间,方便学校对于学生出入校的即时数据管理与监控;
2、学生出入校刷卡信息可即时短信通知家长,便于家长知晓孩子出入校动态;
◆亲情电话功能
1、学生通过电子学生证在校内的电话终端上免费拨打预设的三个亲情号码;
2、每次通话时间为180秒,每月不限通话总时长;
3、家长拨打客服热线400-115-1115可对亲情电话进行设置与更改;
4、亲情电话终端只能呼出,无法呼入,不会影响正常教学秩序。

三、资费说明
◆硬件:
校车刷卡管理系统(每台刷卡器押金1000元)、门卫安全管理系统(学生电子考勤系统)及亲情电话系统免费为学校搭建;
◆卡品:
为学生所配的首张电子学生证只收取工本费,若学生参加增值业务,则收取的首张电子学生证的工本费通过话费方式返给学生家长。

学生丢卡后补卡只收取工本费用;
◆增值服务:
平安短信+亲情电话 5元/月/户(只从家长第一联系人手机上每月扣除此功能使用
费)
门卫处无线刷卡器
亲情话机。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1系统的意义及其功能本系统为《学生证管理程序》。

系统任务描述:假设某校学生学生证基本信息主要包括:学号、姓名、所在系、班级等,本系统应能对这些基本信息进行管理,并要求具有以下功能:(1)通过键盘输入某位学生的学生证信息。

学生证包含的信息请参看自己的学生证;(2)给定学号,显示某位学生的学生证信息;(3)给定某个班级的班号,显示该班所有学生的学生证信息;(4)给定某位学生的学号,修改该学生的学生证信息;2系统的功能结构图以及调用关系3系统功能详细分析学生证管理系统需要完成的功能主要有:从主函数进入各个子函数:子函数包括学生证信息的键入、查询信息的功能、修改学生证信息的功能、退出系统。

具体功能如下:学生证管理程序输入学号输入某班级的班号输入某位学生的学号按学号排序或姓名排序来显示该班所有学生证信息显示该生学生证信息修改该生的学生证信息键入某位学生的学生证信息学生证管理系统3.1学生证信息的键入3.2 查询信息的功能查询记录的主要功能是通过不同的查询方式查询学生的信息。

先是进入查询界面,再选择查询的方式,选择后将输出该学生的信息。

共分为两种:○1 给定某个学生的学号,显示该学生的学生证信息; ○2 给定某个班级的班号,按学号排序来显示该班所有学生的学生证信息; 按班级排序来显示该班所有学生的学生证信息;3.2.1 输入学号,显示该生的学生证信息3.2.2 输入班号,显示该班所有学生的学生证信息学生证信息查询此程序是通过输入某位学生的学号,显示该生的学生证信息。

开始主菜单学生证信息查询输入学号显示该生的学生证信息关闭文件是否继续NY学生证管理系统3.3 修改学生证信息的功能4 运行界面主菜单界面修改信息功能修改信息的主要功能是通过输入某位学生的学号来修改该生的学生证信息。

先是进入修改界面,再输入学号,输入后,将输出该生的学生证信息,再选择是否修改此记录,选择是,则输入修改的信息,并保存修改。

开始主菜单修改学生证信息功能输入学号显示该生学生证信息是否修改写入并保存文件YN学生证管理系统学生证键入的界面个人学生证信息显示界面显示班级信息的选择输出方式的界面学生证管理系统按学号排序显示该班所有学生的学生证信息界面按姓名排序显示该班所有学生的学生证信息界面显示班级信息的退出界面修改学生证信息的界面5系统使用说明1、进入程序时,先以菜单形式显示所有命令,然后用户通过菜单项选择操作;例如:1 学生证信息的键入2 输入学号,显示该生学生证信息3 输入班号,显示该班所有学生的学生证信息4 给定学号,修改该生学生证信息5 退出系统请选择[1/2/3/4/5]:2、键入学生证信息时,按照所给定的格式输入。

3、查询信息是按学生学号和班号的形式进行查询,填入学号后,则显示出该生所有信息;选择按班号查询功能后,在选择显示输出方式,分两种:一种按学号排序;另一种是按姓名排序。

学生证管理系统选定后,再填入班号,则显示出该班所有学生的学生证信息(按已选定的排序方式显示)。

4、修改信息是按输入学号的形式进行修改,填入后,则显示出该生所有信息,然后询问是否修改,若回答“y”(大小写通用),则输入新值,否则不作修改。

6 C语言源程序代码#include <stdio.h>#include <windows.h> //用来使用清屏函数#include <malloc.h>#include <string.h>#include <stdlib.h>#define LEN sizeof(struct STUcard)struct STUcard *creat();void viewperson();void viewclass();void number();void name();void change();struct STUcard *save();struct date{int year;int month;int day;}; //定义用来嵌套的结构体struct STUcard{int number;char name[20];char sex[10];char department[20];char classnumber[10];struct date timeofenter; //嵌套结构体char IDnumber[30];struct date birthday;struct STUcard *next;}; //定义结构体void main(){char c;int n=0;struct STUcard *head;char build; //创建文件FILE *fp;fp=fopen("XX.out","rb");if(fp==NULL){printf("文件不存在,请创建(Y or N)");scanf("%c",&build);if(build=='Y')fp=fopen("XX.out","wb");elseexit(0);}do{system("cls"); //清屏printf("*****************************************\n");printf(" 1: 输入学生证信息\n");printf(" 2: 查找个人信息\n");printf(" 3: 查找班级里所有学生的学生证信息\n");printf(" 4: 修改学生证信息\n");printf(" 5: 退出\n");printf("*****************************************\n");printf(" \n");printf("请选择输入选项[1\\2\\3\\4\\5]:>");do{c=getchar();}while(c!='1'&&c!='2'&&c!='3'&&c!='4'&&c!='5');getchar();switch(c){case '1': head=creat(); break;case '2': viewperson(head); break;case '3': viewclass(head); break;case '4': change(head); break;case '5': exit(0); break;}printf(" 按任意键返回主菜单:\n");学生证管理系统flushall();getchar();printf("%d",n);system("cls");}while(1);}int n;struct STUcard *creat() //录入学生证信息函数{struct STUcard *head,*p1,*p2;n=0;head=NULL;p1=p2=(struct STUcard *)malloc(LEN);printf("请按以下格式输入学生证信息,注意每个数据之间间隔一个空格!\n以学号为00000000结束录入,并且剩下的信息字符用“0”代替输入注意:输入格式不变!:\n");printf("学号姓名性别院系班级入学时间(年月日)身份证号出生日期(年月日)\n");scanf("%d %s %s %s %s %d %d %d %s %d %d %d",&p1->number,p1->name,p1->sex,p1->department,p1->classnumber,&p1->timeofenter.year,&p1->timeofenter.month,&p1->timeofenter.day,p1->IDnumber,&p1->birthday.year,&p1->birthday.month,&p1->birthday.day);while(p1->number!=00000000){n=n+1;if(n==1) head=p1;else p2->next=p1;p2=p1;p1=(struct STUcard *)malloc(LEN);scanf("%d %s %s %s %s %d %d %d %s %d %d %d",&p1->number,p1->name,p1->sex,p1->department,p1->classnumber,&p1->timeofenter.year,&p1->timeofenter.month,&p1->timeofenter.day,p1->IDnumber,&p1->birthday.year,&p1->birthday.month,&p1->birthday.day);}p2->next=NULL;free(p1);save(head); //保存文件return(head); //把已录入信息的链表头指针返回给住函数}void viewperson(struct STUcard * head) //查找个人信息函数{int m,a=0;struct STUcard *p;printf("请输入学号:");printf(" \n ");scanf("%d",&m);p=head; //获取头指针,以使用链表while(p->next!=NULL) //判断是否为空指针{if(p->number==m){printf("学号:%d\n姓名:%s\n性别:%s\n院系:%s\n班级:%s\n入学时间:%d年%d月%d日\n身份证号:%s\n出生日期:%d年%d月%d日\n",p->number,p->name,p->sex,p->department,p->classnumber,p->timeofenter.year,p->timeofenter.month,p->timeofenter.day,p->IDnumber,p->birthday.year,p->birthday.month,p->birthday.day);printf("\n");a=a+1;}p=p->next; //结点后移}if(p->number==m){printf("学号:%d\n姓名:%s\n性别:%s\n院系:%s\n班级:%s\n入学时间:%d年%d月%d日\n身份证号:%s\n出生日期:%d年%d月%d日\n",p->number,p->name,p->sex,p->department,p->classnumber,p->timeofenter.year,p->timeofenter.month,p->timeofenter.day,p->IDnumber,p->birthday.year,p->birthday.month,p->birthday.day);printf("\n");a=a+1;}printf("\n");printf("共%d人\n",a);if(a==0) printf(" 对不起,查无此人!\n");}void viewclass(struct STUcard * head) //查找班级信息函数{char c;学生证管理系统void number();void name();do{system("cls"); //清屏printf("****************************************\n");printf(" 1: 按学号排序输出\n");printf(" 2: 按姓名排序输出\n");printf(" 3: 退出\n");printf("****************************************\n");printf(" \n");printf("请选择输入选项[1\\2\\3]:>");do{c=getchar();}while(c!='1'&&c!='2'&&c!='3');getchar();switch(c){case '1': number(head); break;case '2': name(head); break;case '3': exit(0); continue;}printf(" 按任意键返回上层菜单:\n");flushall();getchar();system("cls");}while(1);}void number(struct STUcard *head) //按学号排序{char c[10];int h1,a=0,i,j,k,w;char hname[20];char hsex[20];char hdepartment[20];char hclassnumber[10];char hIDnumber[30];struct date htimeofenter;struct date hbirthday;struct STUcard *p,*p2,*p3;p=head;p2=head;p3=p2->next;for(k=1;;k++) //用来确定链表中共多少个结点{if(p->next!=NULL) p=p->next;else break;}for(i=0;i<k-1;i++){p2=head;p3=p2->next;for(j=0;j<k-1-i;j++){if(p2->number>p3->number){h1=p2->number;strcpy(hname,p2->name);strcpy(hsex,p2->sex);strcpy(hdepartment,p2->department);strcpy(hclassnumber,p2->classnumber);strcpy(hIDnumber,p2->IDnumber);htimeofenter=p2->timeofenter;hbirthday=p2->birthday;p2->number=p3->number;strcpy(p2->name,p3->name);strcpy(p2->sex,p3->sex);strcpy(p2->department,p3->department);strcpy(p2->classnumber,p3->classnumber);strcpy(p2->IDnumber,p3->IDnumber);p2->timeofenter=p3->timeofenter;p2->birthday=p3->birthday;p3->number=h1;strcpy(p3->name,hname);strcpy(p3->sex,hsex);strcpy(p3->department,hdepartment);strcpy(p3->classnumber,hclassnumber);strcpy(p3->IDnumber,hIDnumber);p3->timeofenter=htimeofenter;学生证管理系统p3->birthday=hbirthday;}p2=p3;p3=p3->next;}}printf("请输入班级:\n");scanf("%s",&c);p=head;for(w=1;w<=k;w++){printf("\n");if(strcmp(p->classnumber,c)==0){printf("学号:%d\n姓名:%s\n性别:%s\n院系:%s\n班级:%s\n入学时间:%d年%d月%d日\n身份证号:%s\n出生日期:%d年%d月%d日\n",p->number,p->name,p->sex,p->department,p->classnumber,p->timeofenter.year,p->timeofenter.month,p->timeofenter.day,p->IDnumber,p->birthday.year,p->birthday.month,p->birthday.day);a=a+1;}p=p->next;}printf("\n");printf("共%d人\n",a);if(a==0) printf("对不起无此班级");}void name(struct STUcard *head) //按姓名排序{char c[10];int h1,a=0,i,j,k,w;char hname[20];char hsex[20];char hdepartment[20];char hclassnumber[10];char hIDnumber[30];struct date htimeofenter;struct date hbirthday;struct STUcard *p,*p2,*p3;p=head;p2=head;p3=p2->next;for(k=1;;k++){if(p->next!=NULL) p=p->next;else break;}for(i=0;i<k-1;i++){p2=head;p3=p2->next;for(j=0;j<k-1-i;j++){if(strcmp(p2->name,p3->name)>0){h1=p2->number;strcpy(hname,p2->name);strcpy(hsex,p2->sex);strcpy(hdepartment,p2->department);strcpy(hclassnumber,p2->classnumber);strcpy(hIDnumber,p2->IDnumber);htimeofenter=p2->timeofenter;hbirthday=p2->birthday;p2->number=p3->number;strcpy(p2->name,p3->name);strcpy(p2->sex,p3->sex);strcpy(p2->department,p3->department);strcpy(p2->classnumber,p3->classnumber);strcpy(p2->IDnumber,p3->IDnumber);p2->timeofenter=p3->timeofenter;p2->birthday=p3->birthday;p3->number=h1;strcpy(p3->name,hname);strcpy(p3->sex,hsex);strcpy(p3->department,hdepartment);strcpy(p3->classnumber,hclassnumber);strcpy(p3->IDnumber,hIDnumber);p3->timeofenter=htimeofenter;p3->birthday=hbirthday;}p2=p3;p3=p3->next;学生证管理系统}}printf("请输入班级:\n");scanf("%s",&c);p=head;for(w=1;w<=k;w++){printf("\n");if(strcmp(p->classnumber,c)==0){printf("学号:%d\n姓名:%s\n性别:%s\n院系:%s\n班级:%s\n入学时间:%d年%d月%d日\n身份证号:%s\n出生日期:%d年%d月%d日\n",p->number,p->name,p->sex,p->department,p->classnumber,p->timeofenter.year,p->timeofenter.month,p->timeofenter.day,p->IDnumber,p->birthday.year,p->birthday.month,p->birthday.day);a=a+1;}p=p->next;}printf("\n");printf("共%d人\n",a);if(a==0) printf("对不起无此班级");}void change(struct STUcard * head) //修改信息{ int x;struct STUcard *p1,*p2;printf("输入要修改学生的学号\n");scanf("%d",&x);p1=head;while((p1->number!=x)&&(p1->next!=NULL)){p2=p1;p1=p1->next;}if(p1->number==x){printf("请输入需要修改的信息:\n");printf("输入学号:");scanf("%d",&p1->number);printf("输入姓名:");scanf("%s",p1->name);printf("输入性别:");scanf("%s",p1->sex);printf("输入院系:");scanf("%s",p1->department);printf("输入班级:");scanf("%s",p1->classnumber);printf("输入入学时间(年月日):");scanf("%d %d %d",&p1->timeofenter.year,&p1->timeofenter.month,&p1->timeofenter.day);printf("输入身份证号:");scanf("%s",p1->IDnumber);printf("输入出生日期(年月日):");scanf("%d %d %d",&p1->birthday.year,&p1->birthday.month,&p1->birthday.day);printf("信息已修改");save(head);}else printf("%d 找不到该学号!\n",x);}struct STUcard *save(struct STUcard *head) //________保存函数{ FILE *fp;struct STUcard *p;p=head;fp=fopen("XX.out","w+");if(fp==0){printf("不能打开文件");exit(0);}while (p){fprintf(fp,"学号:%d\n姓名:%s\n性别:%s\n院系:%s\n班级:%s\n入学时间:%d年%d 月%d日\n身份证号:%s\n出生日期:%d年%d月%d日\n",p->number,p->name,p->sex,p->department,p->classnumber,p->timeofenter.year,p->timeofenter.month,p->timeofenter.day,p->IDnumber,p->birthday.year,p->birthday.month,p->birthday.day);printf("\n");p=p->next;}printf("\n文件保存成功!\n",n);fclose(fp);return head; //返回后结点}学生证管理系统7心得体会通过这次的C语言程序设计,让我意识到自己的基础还不是太扎实,发现自己在编程方面还有些不足,有一些小小的错误不能避免。

相关文档
最新文档