教师工作量管理系统
- 格式:doc
- 大小:96.00 KB
- 文档页数:14
基于JAVA的高校教师工作量管理系统设计与实现的开题报告一、选题背景随着高校教育的不断发展和完善,高校教师的教学和科研工作量也越来越大,因此需要对教师的工作量进行有效管理。
采用计算机辅助的信息化管理方式能够更快速、准确地掌握教师的工作负荷情况,为教育管理人员提供科学依据。
因此,本文拟以此为背景,设计和开发一款基于JAVA的高校教师工作量管理系统。
二、选题意义1.合理分配教师资源教师工作量管理系统能够帮助管理者合理分配教师资源,减轻教师工作压力,提高教师工作效率,从而更好地发挥教师的作用。
2.提高教学素质通过教师工作量管理系统,学校管理者可以清晰地了解到每位教师的工作量情况,对教师的教学工作进行有效监管和指导,进而提高教师的教学素质,提升学校的教学质量。
3.降低管理成本采用计算机管理方式能够实现数据的快速、准确地处理,降低管理成本,并且更便于管理者对教学情况的了解和统计。
三、研究内容本文拟设计和实现一款基于JAVA的高校教师工作量管理系统。
该系统的主要功能包括:1.教师信息的管理包括教师的基本信息、职称、任职情况、教学安排等信息的录入、修改、查询和删除。
2.工作量统计功能通过对教师的教学、科研和管理工作量的统计和计算,计算教师的工作量系数,进而了解教师工作量,为学校管理者提供依据。
3.绩效考核功能通过对教师工作量统计后的数据进行计算,计算教师的绩效,为学校管理者提供教师考核的科学依据,同时也能激励教师更好地完成工作任务。
四、研究计划1.系统需求分析进行高校教师工作量管理系统的用户需求、功能需求、数据需求等方面的调研,形成详细、系统的需求分析报告。
2.系统总体设计根据需求分析报告,进行系统总体架构设计和模块分析,并完成系统的概要设计和详细设计。
3.系统编码实现根据概要设计和详细设计,进行系统的编码实现和数据库设计,完成系统的开发实现。
4.系统测试和维护对系统进行全面测试和验收,并根据用户的反馈意见进行修改和优化。
教学管理信息系统基本功能一览教学管理信息系统基本功能一览一.教务管理⒈培养计划管理:查询、变更、复制、删除等。
⒉教学任务管理:查询教学安排、班级开课情况、添加教学任务、指定授课教师、合班编排、查询合班情况汇总表、添加公共选修课、查询公共选修课汇总表等。
⒊排课管理:手动添加课程、调课、课程批量分组及其查询、设置排课参数、批量排课;班级、教室、教师占用情况查询等。
⒋考务管理:期中期末考试安排、补考安排、考试冲突学生汇总等。
⒌选课管理:个人、专业学分上限查询和修改、课程选课学生调整、学生个人课程表调整、班级课程表查询和调整、设定可选课的学号、批量生成班级课程表、查询历年课程;学生点名册、教学任务通知书、学生个人课程表、批量课程表、班级课程表打印等。
⒍重读学生名单查询二.教学质量管理⒈教学质量问卷调查:问卷类型设置、问题设置、测评查询开关、调查回收率计算、评测情况汇总、评测意见汇总等。
⒉工作量管理:工作量参数设定、工作量统计、查询等。
三.成绩与学籍管理⒈成绩管理⑴当前学期成绩管理:成绩修改、未输成绩课程、院部未确认成绩查询、成绩分布统计等。
⑵历年成绩管理:按学号、按课程查询、每学期课程不及格学生名单、成绩分布统计、整班/按学号添加成绩、成绩修改、课程性质变更、课程代码更改等。
⑶当前学期成绩数据转移到历年成绩表。
⒉绩点管理:本学期平均学分绩点计算、历年平均学分绩点计算⒊英语四、六级考试报名及成绩查询⒋学生信息管理⑴基本信息:学生基本信息添加、查询、修改等。
⑵学籍变动⒌学生培养计划管理:培养计划查询、添加、修改与删除等。
⒍成绩查询、四、六级考试报名、成绩查询开关设置等。
⒎报表统计打印:在校生统计、班级学生名单、成绩登记表、班级成绩一览表、本学期行政班级期中成绩一览表、学生个人成绩总表、学生学期成绩单等。
四.系统管理⒈教学基本要素信息管理:院部、专业、方向、班级、教师、职称、课程、教室的查询、添加修改等。
⒉数据管理:各数据表维护、备份、转移、恢复等。
浅析高校教师工作量管理系统的现状与发展【摘要】高校教师工作量的计算是一项涉及信息面广,数据量大,数据关系复杂,且准确性和安全性要求又很高的工作,关系到学院、二级管理部门、其他行政部门以及教师、学生的诸多方面。
目前国内高校使用的教师工作量管理办法还停留在传统人工计算和审核状态,已经明显不能适应现代教育管理要求。
因此,如何利用现代管理方法和信息技术研究开发新的高校教师工作量管理系统,使教学信息具有实时性、深入性、针对性、广泛性等特点,全面提高高校教学部门的管理层次、提升服务水平,已成高校现代化发展的迫切需求,是现代高等教育发展的必然要求。
【关键词】高校教师;工作量:管理系统一、深入分析高校教师工作量管理系统的发展现状校教师工作量是衡量教师工作情况的基础数据,是考核教师岗位职责完成情况、评聘教师职务、工资晋级、评优评奖等的重要指标。
教师工作量的统计,关系到院系的具体教学部署,关系到教职工的切身利益。
高职院校发展体制正处于深化改革时期,影响到领导者决策的数据信息,准确性、科学性要求更高。
笔者从事高职教务管理工作多年,每年年终都要进行全系教职工的各项工作量统计。
不仅要统计全系教职工的工作量,还要协助学院其他部门完成相关统计和审核工作。
从统计和审核的工作流程上看,每个环节几乎都是采用手工或者半手工的方式进行的。
显而易见,这种管理方式已经不能适应现代化的教学模式,既不方便教职工查阅,也无法为学院的发展提供科学的教学基本数据,况且数据的错误率较高。
尽管高校都会安排专门的、为数较多的管理人员进行教师工作量的汇总和审核工作,但是效率却不高,存在太多的人为因素。
本人在高校从事教学管理工作,每学年末都要计算教师的各项工作量。
虽然学院的教务管理部门和人事部门都根据本院的实际情况制定了一套具体的计算规则来评价教师的工作量,帮助发放酬金,但由于在计算工作量时,通常需要考虑到不同人员的工作量计算公式,不同课程、不同职称、不同授课对象的工作量系数等情况,种类繁多,计算方法又各不相同,在具体操作过程中需要进行大量的数据统计、数值计算、各种报表的制作。
曾都区“全国教师管理信息系统”信息采集办法及指标填写说明一、“全国教师管理信息系统”登陆网址二、教师信息采集范围:1、本次只采集公办学校在编教职工(仅限财政发工资的人员)的信息。
公办学校在编不在岗的人员信息均由其编制所在学校负责采集。
依法举办的民办学校教师和公办学校临时聘用的教师均暂不参与本次信息采集。
2、局二级业务单位教师:持有高中教师资格证的在编教师信息由区二中采集,持有初级中学教师资格证的教师信息由区实验中学采集,持有小学教师资格证的教师信息由区实验小学采集,其他工作人员信息由区铁树学校采集。
请各二级单位在编人员主动与以上学校联系。
3、离退休人员:2016年12月31日以前离退休人员的信息均不采集。
三、学校五个账号四种角色的意义1、系统管理员账号:负责系统的日常管理,如用户管理(禁用、启用、解锁等)。
2、信息管理员账号:负责教师的信息管理,包括信息录入、审核、查询、上报等。
(主要账号)3、培训管理员账号:负责教师继教学时(学分)管理数据的录入、审核、查询、上报等。
4、信息查询员1、2账号:负责教师信息的查询及统计(无添加、修改、审核权限)。
四、三种信息采集方法介绍1、教师自助系统录入法(推荐)。
A:用学校“系统管理员”账号进入系统,导出教师的基本信息模板,先统计全体教师的“姓名、性别、身份证号、出生日期、是否新聘教师(全部选否)”等五项基本信息,再导入系统生成教师自助子系统账号和随机密码。
B:教师个人用生成的教师自助子系统账号(即身份证号码)和随机密码(首次登录时,系统会提示要修改密码,请老师们务必在笔记本上牢记修改后的密码)登录教师自助子系统,逐项填报个人信息,审验通过后“报送”到学校。
C:学校用“信息管理员账号”登录进入系统进行审核,并补录“基本待遇、年度考核、师德信息”三项数据,审核验证后“报送”到区教育局。
D:再用“培训管理员”账号登录系统,设置培训计划,登记培训内容、学时、学分等信息,审核后上报到区教育局(培训这一块的内容为下一步的工作,省继教中心还要另行安排的,各学校本次采集信息时暂不考虑)。
基于的教师工作量管理系统作者:周腾孙玉涛来源:《电子世界》2013年第17期【摘要】本管理系统采用基于[1]技术的B/S结构和Microsoft SQL Server 2008[2]数据库管理,针对目前许多高校在教师工作量管理工作方面存在效率低下,沟通不便的现状,运用计算机和信息技术,设计一个现代化的基于web[3]的信息管理系统,该系统在统计教师工作量所需要的各个方面能够做到数据分类有条理,信息反馈很及时,工作量统计少错误等诸多有点,节省了高校工作中的人力物力,大大提高了工作效率,推动高校日常教学工作的进一步提高。
【关键词】;Web,SQL Server 2008;教师工作量管理系统1.引言近年来,随着高校办学规模的不断扩大,在学生MIS系统的建设上学校都投入了很大的精力和财力,也取得了不错的成效,在日常的管理当中,学生的各项信息都有比较高效的管理统计,但在学校任课教师的教学工作量方面各高校还缺少一定的重视。
目前的高校中一般都是面向单个职能部门的处理事务模式,基本属于单机操作,只能处理日常中简单和机械性的工作,加上各职能部门之间数据格式的不统一,各部门之间实现数据共享成为了一个遥不可及的梦想。
在教师工作量管理这个方面尤其如此。
教师工作量统计十分复杂,迫切需要一套完善的有执行效率的管理系统来帮助高校在工作量管理方面提高效率,节省资源,提高高校在日常教学工作中的工作质量。
本文将针对学院教学办的教师工作量管理设计出一套开放高效,实用,灵活的基于web的教师工作量管理系统,并着重分析学院教学办在工作量管理系统中的功能。
2.系统需求教师工作量管理系统,是一个采集,计算,统计教师工作量的管理系统,系统可以帮助高校教学办和教务处提交,统计,审核,更改教师的工作量数据,也可以允许教师查询自己的工作量数据并提出质疑和反馈。
系统将使教师工作量统计工作达到最大程度的简单高效。
该系统为采用B/S架构的Web应用程序,后台数据库为SQL SERVER 2008,简单实用。
安徽省全国教师管理信息系统登录入口全国教师管理信息系统安徽省登录入口怎么进去,以下是小编为大家整理了如下入口,现在一起去看看吧!点击登陆安徽省全国教师管理信息系统教育部部署与启用全国教师管理信息系统建设记者日前从教育部获悉,根据国家教育信息化工作总体部署,为建立完善国家教育管理公共服务平台,教育部将在全国部署与启用教师系统。
据悉,教师系统是国家教育管理公共服务平台的核心组成部分,具备教师基础信息管理和业务管理两项基本功能,旨在为各地各校进行教育决策提供信息服务,为推进教师工作管理信息化提供支持,进一步提升决策水平、优化管理流程、提高管理效率,更好地开展教师队伍建设工作。
通知指出,教师系统建设与应用的核心任务包括三项:一是采集全国各级各类教师基础信息,实现联网运行,为每一名教师建立电子档案,确保教师“一人一号”;二是推动教师信息动态更新,确保信息准确有效;三是推进教师系统应用,实现基础信息管理、业务管理与教师工作的深度融合。
通知要求,教师系统建设要做好三项部署:一是两级建设、五级应用:教育部负责建设国家级教师系统,提供各省级教育行政部门使用;省级教育行政部门部署本地区软硬件环境,建立省级教师系统。
二是分级管理、属地运行:教育部负责国家级教师系统的运行与管理。
省级教育行政部门负责省级教师系统建设与管理。
三是统一规划、地方定制:教师系统统一规划各地上报的教师核心信息指标,提供各省选用。
省级教育行政部门要在系统启用前,认真研究各项信息指标,在上报国家的核心信息基础上,选定本地区采集的教师基础信息指标,并可根据需要进行研制拓展。
通知对教师系统的部署工作进行了安排。
教育部将于2016年8月中下旬对省级教育行政部门、中央部门所属高校相关负责人进行专项培训。
各省级教育行政部门应于9月底前完成市、县教育部门和本省高校相关负责人的培训工作。
各省、中央部门所属高校要确保在2016年12月底前完成信息采集审核工作,并在此基础上推进信息定期更新和系统应用工作。
关于高校教师工作量管理系统的构建思路作者:吴琼冯长宝任妮来源:《科技资讯》2019年第02期摘要:高校教师工作量管理是各高校教学管理任务中的一项重要工作。
高校教师工作量管理系统可以促进高校教学管理工作的顺利进行,推动教学质量的提升。
该文以吉林动画学院为例,论述了高校教师教学工作量管理系统的分析与构建。
首先,根据吉林动画学院教务部的业务工作流程,对系统进行了需求分析工作,主要介绍了5种角色的权限分配和教学工作量的计算方法。
然后,对系统功能模块进行了划分,主要分为4种模块,分别为系统管理、教师管理、专职教师工作量管理和外聘教师工作量管理。
最后,对全文工作进行了简要的总结。
关键词:教师工作量管理系统角色分配中图分类号:G451 文献标识码:A 文章编号:1672-3791(2019)01(b)-00-02目前,国内高校对于教师考核评价的标准逐渐细化,为了实现教师教学工作量的考核,纷纷制定了适合本学校的教学工作量计算方法。
传统的手工计算教学工作量的方法效率低下,容易犯错。
构建一款高校教师工作量管理系统,可以实现教学工作量管理的办公自动化,提高教学管理效率[1]。
该文以吉林动画学院为例,深入探究了高校教师教学工作量管理系统的构建。
1 系统需求分析1.1 角色分配高校教师教学工作量考核标准并不一致,教学工作量管理系统的角色分配也不尽相同。
以吉林动画学院为例,根据教务部的业务工作流程和对系统功能的要求,系统设置5种角色,分别为普通用户、授课教师、分院综合办、院系领导、教务处[2]。
学期初时,教务处会导入教师课程,由系统自动计算出教师教学工作量。
对于整段教学任务变更和调串课,综合办可以对教师教学工作量和课程进行微调,综合办所做的调整都需要经过教师确认,院系领导和教务处审核。
系统可以设置多用户,分别赋予以上5种角色中的一种,不同角色分别具有以下权限。
(1)教务处:可自定义各类用户的权限,教务处在系统中可以导入、新增、编辑、删除、审核、导出教师教学工作量以及学院整体教学工作量。
教育行业智能教学管理系统开发第一章教育行业智能教学管理系统概述 (3)1.1 系统背景 (3)1.2 系统目标 (4)1.3 系统架构 (4)第二章需求分析 (4)2.1 用户需求 (4)2.2 功能需求 (5)2.3 功能需求 (5)第三章系统设计 (6)3.1 总体设计 (6)3.1.1 系统架构 (6)3.1.2 技术选型 (6)3.2 模块设计 (6)3.2.1 用户管理模块 (6)3.2.2 课程管理模块 (6)3.2.3 作业管理模块 (6)3.2.4 成绩管理模块 (6)3.2.5 通知公告模块 (6)3.2.6 数据统计与分析模块 (7)3.3 数据库设计 (7)3.3.1 数据库表设计 (7)3.3.2 数据库关系设计 (7)3.3.3 数据库索引设计 (7)第四章教学管理模块 (7)4.1 教学计划管理 (7)4.2 教学资源管理 (8)4.3 教学进度管理 (8)第五章学生管理模块 (9)5.1 学生信息管理 (9)5.1.1 功能概述 (9)5.1.2 功能模块 (9)5.2 学绩管理 (9)5.2.1 功能概述 (9)5.2.2 功能模块 (9)5.3 学生行为分析 (10)5.3.1 功能概述 (10)5.3.2 功能模块 (10)第六章教师管理模块 (10)6.1 教师信息管理 (10)6.1.1 功能概述 (10)6.1.2 信息录入 (10)6.1.4 信息修改与删除 (10)6.2 教师工作量管理 (10)6.2.1 功能概述 (11)6.2.2 工作量录入 (11)6.2.3 工作量查询与统计 (11)6.2.4 工作量调整与审核 (11)6.3 教师绩效考核 (11)6.3.1 功能概述 (11)6.3.2 绩效考核指标设置 (11)6.3.3 绩效考核数据录入与统计 (11)6.3.4 绩效考核结果查询与反馈 (11)第七章课程管理模块 (11)7.1 课程设置管理 (12)7.1.1 功能概述 (12)7.1.2 功能模块 (12)7.1.3 操作流程 (12)7.2 课程内容管理 (12)7.2.1 功能概述 (12)7.2.2 功能模块 (12)7.2.3 操作流程 (13)7.3 课程评价管理 (13)7.3.1 功能概述 (13)7.3.2 功能模块 (13)7.3.3 操作流程 (13)第八章系统安全与权限管理 (13)8.1 用户身份认证 (13)8.1.1 认证机制概述 (13)8.1.2 用户认证流程 (13)8.1.3 认证异常处理 (14)8.2 权限分配与控制 (14)8.2.1 权限分配原则 (14)8.2.2 权限分配流程 (14)8.2.3 权限控制策略 (14)8.3 数据安全保护 (15)8.3.1 数据加密 (15)8.3.2 数据备份 (15)8.3.3 数据恢复 (15)8.3.4 数据审计 (15)第九章系统实现与测试 (15)9.1 系统开发环境 (15)9.1.1 硬件环境 (15)9.1.2 软件环境 (16)9.2 系统实现 (16)9.2.2 数据层 (16)9.2.3 服务层 (16)9.2.4 业务层 (16)9.2.5 表示层 (16)9.3 系统测试 (16)9.3.1 测试策略 (17)9.3.2 功能测试 (17)9.3.3 功能测试 (17)9.3.4 安全测试 (17)9.3.5 兼容性测试 (17)第十章系统部署与维护 (17)10.1 系统部署 (17)10.1.1 部署环境准备 (18)10.1.2 部署流程 (18)10.1.3 部署注意事项 (18)10.2 系统维护 (18)10.2.1 系统监控 (18)10.2.2 系统故障处理 (19)10.2.3 系统备份与恢复 (19)10.3 系统升级与扩展 (19)10.3.1 系统升级 (19)10.3.2 系统扩展 (19)第一章教育行业智能教学管理系统概述1.1 系统背景信息技术的飞速发展,教育行业正面临着前所未有的变革。
#include<stdio.h>#include<stdlib.h>#include<string.h># define XZH 20# define XZM 20# define XG 100typedef struct TeaSalary{char number[15];char name[10];float DHF;float JBGZ;float JT;float SHBT;float YFGZ;float SDF;float FZ;float SDS;float WSF;float GJJ;float SFGZ;float HJKF;}TeaSalary;long size=sizeof(struct TeaSalary);long getcount(FILE *fp);void newteacher(FILE *fp);void showteacher(FILE *fp);void searchteacher(FILE *fp);void changeteacher(FILE *fp);void keepteacher(FILE *fp);void orderteacher(FILE *fp);void searchname(FILE *fp,char *name);void searchnumber(FILE *fp,char *number);void deleteteacher(FILE *fp);void deletenumber(FILE *fp);void deletename(FILE *fp);void changenumber(FILE *fp);void changename(FILE *fp);int main() /*主函数*/{FILE *fp;int choice;long count;if((fp=fopen("e:\\teacher.txt" ,"a+"))==NULL){printf("Can not open file teacher.txt!\n");exit(0);}count=getcount(fp);printf("\t\t 欢迎来到教师工资管理系统\t\t\n"); printf("\t\t该程序由“龙圣”、“郭亚”制作\t\t\n"); printf("\t\t 计本-092班\t\t\n"); do{printf("文件中记录数为:%d\n",count);printf("\t\t1-输入功能,\t2-显示功能\n");printf("\t\t3-查找功能,\t4-修改功能\n");printf("\t\t5-删除功能,\t6-保存功能\n");printf("\t\t7-排序功能,\t0-退出功能\n");printf("请进行选择:\n");scanf("%d",&choice);switch(choice){case 1:newteacher( fp); count++;break;case 2:showteacher( fp);break;case 3:searchteacher( fp);break;case 4:changeteacher( fp);break;case 5:deleteteacher( fp); count--;break;case 6:keepteacher( fp);break;case 7:orderteacher( fp);break;case 0:break;default:printf("您选择错误,请重新选择\n");break;}}while(choice!=0);if(fclose(fp)){printf("Can not close the file teacher.txt!\n");exit(0);}fclose(fp);printf("感谢使用!\n");return 0;}long getcount(FILE *fp) /*读取文件记录数*/{long begin,end,logcount;fseek(fp,0L,0);begin=ftell(fp);fseek(fp,size,2);end=ftell(fp);logcount=(end-begin)/size-1;return logcount;}/*输入新记录*/void newteacher(FILE *fp) /*将新记录添加到文件中*/{TeaSalary f;printf("输入教师号:");scanf("%s",f.number);printf("姓名:");scanf("%s",);printf("基本工资:");scanf("%f",&f.JBGZ);printf("津贴:");scanf("%f",&f.JT);printf("生活补贴:");scanf("%f",&f.SHBT);printf("电话费:");scanf("%f",&f.DHF);printf("水电费:");scanf("%f",&f.SDF);printf("房租:");scanf("%f",&f.FZ);printf("所得税:");scanf("%f",&f.SDS);printf("卫生费:");scanf("%f",&f.WSF);printf("公积金:");scanf("%f",&f.GJJ);f.YFGZ=f.JBGZ+f.JT+f.SHBT;f.HJKF=f.DHF+f.SDF+f.FZ+f.SDS+f.WSF+f.GJJ;f.SFGZ=f.YFGZ-f.HJKF;fseek(fp,0L,SEEK_END);fwrite(&f,size,1,fp);printf("*************************************************************** *************\n");printf("教师号:%s\t\t\t姓名:%5s\n基本工资:%.2f\t\t\t津贴:%.2f\t\t生活补贴:%.2f\n",f.number,,f.JBGZ,f.JT,f.SHBT);printf("电话费:%.2f\t\t\t水电费:%.2f\t\t\t房租:%.2f\n所得税:%.2f\t\t\t卫生费:%.2f\t\t\t公积金:%.2f\n",f.DHF,f.SDF,f.FZ,f.SDS,f.WSF,f.GJJ);printf("应发工资:%.2f\n合计扣费:%.2f\n实发工资:%.2f\n",f.YFGZ,f.HJKF,f.SFGZ); printf("*************************************************************** *************\n");printf("输入完成!\n");}void showteacher(FILE *fp) /*显示文件中所有记录*/{TeaSalary f;fseek(fp,0L,SEEK_SET);fread(&f,size,1,fp);//printf("fjkajshiogfj");while(!feof(fp)){printf("************************************************************ ****************\n");printf("教师号:%s\t\t\t姓名:%5s\n基本工资:%.2f\t\t\t津贴:%.2f\t\t生活补贴:%.2f\n",f.number,,f.JBGZ,f.JT,f.SHBT);printf("电话费:%.2f\t\t\t水电费:%.2f\t\t\t房租:%.2f\n所得税:%.2f\t\t\t 卫生费:%.2f\t\t\t公积金:%.2f\n",f.DHF,f.SDF,f.FZ,f.SDS,f.WSF,f.GJJ);printf("应发工资:%.2f\n合计扣费:%.2f\n实发工资:%.2f\n",f.YFGZ,f.HJKF,f.SFGZ);printf("************************************************************ ****************\n");fread(&f,size,1,fp);}void searchteacher(FILE *fp) /*查找文件记录*/{int choice2;char number[15];char *name;printf("1-按教师号查询\n");printf("2-按姓名查询\n");printf("请选择查询类型\n");scanf("%d",&choice2);switch(choice2){case 1:printf("请输入教师号:\n");scanf("%s",number);searchnumber(fp,number);break;case 2:printf("请输入教师姓名:\n");scanf("%s",name);searchname(fp,name);break;default:printf("您选择错误,请重新选择\n");break;}}void searchnumber(FILE *fp,char *number) /*按教师号查找*/{int i,flag=0;long count;TeaSalary f[XG];count=getcount(fp);if(count==0){printf("教师工资管理系统为空\n");return;}for(i=0;i<=count;i++){fseek(fp,size*i,SEEK_SET);fread(&f,size,1,fp);if(strcmp(number,f[i].number)==0){flag=1;break;}if(flag){fseek(fp,size*i,SEEK_SET);fread(&f,size,1,fp);printf("教师号:%s\n",f[i].number);printf("姓名:%5s\n",f[i].name);printf("基本工资:%.2f\n",f[i].JBGZ);printf("津贴:%.2f\n",f[i].JT);printf("生活补贴:%.2f\n",f[i].SHBT);printf("应发工资:%.2f\n",f[i].YFGZ);printf("电话费:%.2f\n",f[i].DHF);printf("水电费:%.2f\n",f[i].SDF);printf("房租:%.2f\n",f[i].FZ);printf("所得税:%.2f\n",f[i].SDS);printf("卫生费:%.2f\n",f[i].WSF);printf("公积金:%.2f\n",f[i].GJJ);printf("合计扣款:%.2f\n",f[i].HJKF);printf("实发工资:%.2f\n",f[i].SFGZ);}elseprintf("无此教师号!");}void searchname(FILE *fp,char *name) /*按教师姓名查找*/{int i,flag=0;long count;struct TeaSalary f[XG];count=getcount(fp);if(count==0){printf("教师工资管理系统为空\n");return;}for(i=0;i<=count;i++){fseek(fp,size*i,SEEK_SET);fread(&f,size,1,fp);if(strcmp(name,f[i].name)==0){flag=1;break;}}if(flag){fseek(fp,size*i,SEEK_SET);fread(&f[i],size,1,fp);printf("教师号:%s\n",f[i].number);printf("姓名:%5s\n",f[i].name);printf("基本工资:%.2f\n",f[i].JBGZ);printf("津贴:%.2f\n",f[i].JT);printf("生活补贴:%.2f\n",f[i].SHBT);printf("应发工资:%.2f\n",f[i].YFGZ);printf("电话费:%.2f\n",f[i].DHF);printf("水电费:%.2f\n",f[i].SDF);printf("房租:%.2f\n",f[i].FZ);printf("所得税:%.2f\n",f[i].SDS);printf("卫生费:%.2f\n",f[i].WSF);printf("公积金:%.2f\n",f[i].GJJ);printf("合计扣款:%.2f\n",f[i].HJKF);printf("实发工资:%.2f\n",f[i].SFGZ);}elseprintf("无此教师名!");}void deleteteacher(FILE *fp) /*删除一条记录*/{int choose;printf("请选择删除方式!");printf("1 按教师号删除\n");printf("2 按教师姓名删除\n");printf("0 退出删除功能\n");scanf("%d",&choose);switch(choose){case 1:deletenumber(fp);break;case 2:deletename(fp);break;case 0:break;default:printf("选择方式有误!请重新进入该功能进行修改!");break;}}void deletenumber(FILE *fp) /*按教师号删除*/{TeaSalary f[XG];char num[15];int i=0,j=0,yorn;long count;count=getcount(fp);printf("请输入要删除的教师的教师号:");scanf("%s",num);for(i=0;i<count;i++){fseek(fp,size*i,SEEK_SET);fread(&f[i],size,1,fp);if(strcmp(num,f[i].number)==0){printf("教师号:%s\n",f[i].number);printf("姓名:%5s\n",f[i].name);printf("基本工资:%.2f\n",f[i].JBGZ);printf("津贴:%.2f\n",f[i].JT);printf("生活补贴:%.2f\n",f[i].SHBT);printf("应发工资:%.2f\n",f[i].YFGZ);printf("电话费:%.2f\n",f[i].DHF);printf("水电费:%.2f\n",f[i].SDF);printf("房租:%.2f\n",f[i].FZ);printf("所得税:%.2f\n",f[i].SDS);printf("卫生费:%.2f\n",f[i].WSF);printf("公积金:%.2f\n",f[i].GJJ);printf("合计扣款:%.2f\n",f[i].HJKF);printf("实发工资:%.2f\n",f[i].SFGZ);printf("是否修改此教师资料?是1:否:0\n");scanf("%d",&yorn);if(yorn==1){for(j=i;j<=count-1;j++)f[j]=f[j+1];fp=fopen("e:\\teacher.txt","wb");for(i=0;i<count;i++){fwrite(&f,size,1,fp);}fclose(fp);printf("删除成功;\n");}elsebreak;}elseprintf("无此教师名\n");}}void deletename(FILE *fp) /*按教师姓名删除*/{struct TeaSalary f[XG];char name[10];int i=0,j=0,yorn;long count;count=getcount(fp);printf("请输入要删除的教师的姓名:");scanf("%s",name);for(i=0;i<count;i++){fseek(fp,size*i,SEEK_SET);fread(&f[i],size,1,fp);if(strcmp(name,f[i].name)==0){printf("教师号:%s\n",f[i].number);printf("姓名:%5s\n",f[i].name);printf("基本工资:%.2f\n",f[i].JBGZ);printf("津贴:%.2f\n",f[i].JT);printf("生活补贴:%.2f\n",f[i].SHBT);printf("应发工资:%.2f\n",f[i].YFGZ);printf("电话费:%.2f\n",f[i].DHF);printf("水电费:%.2f\n",f[i].SDF);printf("房租:%.2f\n",f[i].FZ);printf("所得税:%.2f\n",f[i].SDS);printf("卫生费:%.2f\n",f[i].WSF);printf("公积金:%.2f\n",f[i].GJJ);printf("合计扣款:%.2f\n",f[i].HJKF);printf("实发工资:%.2f\n",f[i].SFGZ);printf("是否修改此教师资料?是1:否:0\n");scanf("%d",&yorn);if(yorn==1){for(j=i;j<=count-1;j++)f[j]=f[j+1];fp=fopen("e:\\teacher.txt","wb");for(i=0;i<count;i++){fwrite(&f,size,1,fp);}fclose(fp);printf("删除成功;\n");}elsebreak;}elseprintf("无此教师名\n");}}void changeteacher(FILE *fp) /*修改教师记录*/{int choose;printf("请选择修改方式!");printf("1 按教师号修改\n");printf("2 按姓名修改\n");printf("0 退出\n");scanf("%d",&choose);switch(choose){case 1:changenumber(fp);break;case 2:changename(fp);break;case 0:break;default:printf("选择方式错误!请重新进入该功能进行修改");break;}}void changenumber(FILE *fp) /*按教师号修改*/{TeaSalary f[XG];char num[15];int i,yorn;long count;count=getcount(fp);printf("请输入要修改的教师的教师号:");scanf("%s",num);for(i=0;i<count;i++){fseek(fp,size*i,SEEK_SET);fread(&f[i],size,1,fp);if(strcmp(num,f[i].number)==0){printf("教师号:%s\n",f[i].number);printf("姓名:%5s\n",f[i].name);printf("基本工资:%.2f\n",f[i].JBGZ);printf("津贴:%.2f\n",f[i].JT);printf("生活补贴:%.2f\n",f[i].SHBT);printf("应发工资:%.2f\n",f[i].YFGZ);printf("电话费:%.2f\n",f[i].DHF);printf("水电费:%.2f\n",f[i].SDF);printf("房租:%.2f\n",f[i].FZ);printf("所得税:%.2f\n",f[i].SDS);printf("卫生费:%.2f\n",f[i].WSF);printf("公积金:%.2f\n",f[i].GJJ);printf("合计扣款:%.2f\n",f[i].HJKF);printf("实发工资:%.2f\n",f[i].SFGZ);printf("是否修改此教师资料?是1:否:0\n");scanf("%d",&yorn);if(yorn==1){printf("输入教师号:");scanf("%s",f[i].number);printf("姓名:");scanf("%s",f[i].name);printf("基本工资:");scanf("%f",&f[i].JBGZ);printf("津贴:");scanf("%f",&f[i].JT);printf("生活补贴:");scanf("%f",&f[i].SHBT);printf("电话费:");scanf("%f",&f[i].DHF);printf("水电费:");scanf("%f",&f[i].SDF);printf("房租:");scanf("%f",&f[i].FZ);printf("所得税:");scanf("%f",&f[i].SDS);printf("卫生费:");scanf("%f",&f[i].WSF);printf("公积金:");scanf("%f",&f[i].GJJ);f[i].YFGZ=f[i].JBGZ+f[i].JT+f[i].SHBT;f[i].HJKF=f[i].DHF+f[i].SDF+f[i].FZ+f[i].SDS+f[i].WSF+f[i].GJJ;f[i].SFGZ=f[i].YFGZ-f[i].HJKF;fp=fopen("e:\\teacher.txt","wb");for (i=0;i<count;i++){fwrite(&f[i],size,1,fp);fclose(fp);printf("***修改成功***\n");}}elsebreak;}elseprintf("无此教师号\n");}}void changename(FILE *fp) /*按教师姓名修改*/{struct TeaSalary f[XG];char name[10];int i,yorn;long count;count=getcount(fp);printf("请输入要修改的教师的姓名:");scanf("%s",name);for(i=0;i<count;i++){fseek(fp,size*i,SEEK_SET);fread(&f[i],size,1,fp);if(strcmp(name,f[i].name)==0){printf("教师号:%s\n",f[i].number);printf("姓名:%5s\n",f[i].name);printf("基本工资:%.2f\n",f[i].JBGZ);printf("津贴:%.2f\n",f[i].JT);printf("生活补贴:%.2f\n",f[i].SHBT);printf("应发工资:%.2f\n",f[i].YFGZ);printf("电话费:%.2f\n",f[i].DHF);printf("水电费:%.2f\n",f[i].SDF);printf("房租:%.2f\n",f[i].FZ);printf("所得税:%.2f\n",f[i].SDS);printf("卫生费:%.2f\n",f[i].WSF);printf("公积金:%.2f\n",f[i].GJJ);printf("合计扣款:%.2f\n",f[i].HJKF);printf("实发工资:%.2f\n",f[i].SFGZ);printf("是否修改此教师资料?是1:否:0\n");scanf("%d",&yorn);if(yorn==1){printf("输入教师号:");scanf("%s",f[i].number);printf("姓名:");scanf("%s",f[i].name);printf("基本工资:");scanf("%f",&f[i].JBGZ);printf("津贴:");scanf("%f",&f[i].JT);printf("生活补贴:");scanf("%f",&f[i].SHBT);printf("电话费:");scanf("%f",&f[i].DHF);printf("水电费:");scanf("%f",&f[i].SDF);printf("房租:");scanf("%f",&f[i].FZ);printf("所得税:");scanf("%f",&f[i].SDS);printf("卫生费:");scanf("%f",&f[i].WSF);printf("公积金:");scanf("%f",&f[i].GJJ);f[i].YFGZ=f[i].JBGZ+f[i].JT+f[i].SHBT;f[i].HJKF=f[i].DHF+f[i].SDF+f[i].FZ+f[i].SDS+f[i].WSF+f[i].GJJ;f[i].SFGZ=f[i].YFGZ-f[i].HJKF;fp=fopen("e:\\teacher.txt","wb");for (i=0;i<count;i++){fwrite(&f[i],size,1,fp);fclose(fp);printf("***修改成功***\n");}}elsebreak;}elseprintf("无此教师名\n");}}void orderteacher(FILE *fp) /*对教师进行排序*/{struct TeaSalary f[XG];struct TeaSalary temp;int i=0,j=0;long count;count=getcount(fp);for(i=0;i<count-1;i++){for(j=i;j<count-1;j++){if(strcmp(f[j].number,f[j+1].number)>0){temp=f[j];f[j]=f[j+1];f[j+1]=temp;}}}fp=fopen("e:\\teacher.txt","wb");for (i=0;i<count;i++){fwrite(&f[i],size,1,fp);}fclose(fp);printf("已对该系统中教师进行排序\n");}void keepteacher(FILE *fp) /*文件保存*/{printf("\t=====>程序在运行时已自动保存.....\n");}。