教师工作量统计系统
基于Fxcel VBA的教学工作量统计系统开发

基于Fxcel VBA的教学工作量统计系统开发摘要:文章针对当前高校教师教学工作量统计工作操作繁琐,数据量大,易于出错的特点,基于Excel软件开发了教学工作量统计系统,实现了教学任务书读取、教学工作量计算及汇总,简化了教学工作量计算过程,减轻了教学管理人员的工作负担,提高了工作效率。
关键词:教学工作量Excel VBA高校教师工作量计算涉及的内容范围比较繁杂,包括任务书信息数据录入、按照课程性质确定学时系数、按上课班级数及人数计算单门课程当量学时数、教师个人工作量汇总等等。
该院的工作量计算一直依靠单纯的人工管理;近年来借助于Excel进行手动计算。
管理人员需要手动向Excel表格输入大量的数据,包括教师信息、任务信息等;计算多种不同的工作量系数,包括理论教学环节和实践教学环节等方面;对各种表格进行处理,包括教师信息表、教学任务书、教学任务配置单等,并需要完成这些表之间的关联,避免复制、插入、修改或删除导致数据错乱。
对教师工作量进行统计时,需要进行大量的计算,操作起来非常繁琐,任务繁重并且容易出错。
基于上述原因,管理人员急需一个教师工作量统计系统来缓解工作压力,提高工作效率,以更好的配合管理部门的工作。
该文根据吉林建筑大学教学工作量计算办法,以及给定学期教学任务书,实践教学任务配置单,选课最终人数统计表(本文以2011-2012第一学期为例),利用已有的大家都熟悉的Excel办公软件,开发出一个实用的计算机辅助工作量统计工具,具备一定的通用性,能有效减轻各学院教学秘书的工作负担。
1 系统分析按照我校教务部门教学工作量的统计流程,由教务处向各学院统一下发核定后的教学任务书,由各学院教学秘书选取本学院的教学任务,根据每门课程的课程性质、授课班级数计人数计算各门课程的当量学时,并最终统计出每位教师所承担教学任务的当量学时数,作为核定课时费得依据。
管理人员需要的系统要能够将学校下发的学期教学任务书中本学院的教学任务进行选定,按工作量明细表的格式对所需信息进行自动读取。
教师教学工作量申报系统使用说明.doc

教师教学工作量申报系统使用说明一、用户系统包括五类用户:教师、教研室主任、教学秘书、教学主任、系统管理员。
各类用户具有不同的权限。
教师:具有填报本人工作量,查询本教研室其它教师工作量的权限。
教研室主任:具有填报本人工作量,查询、审核本教研室其它教师工作量,数据上报的权限。
教学秘书:具有查询本院系各教研室教师工作量以及打印教研室、院系教师工作量汇总表的权限。
教学主任:具有填报本人工作量,查询本院系各教研室教师工作量的权限。
二、登录系统教师可通过访问科技学院主页→机构设置→教学工作部→教师园地→教师教学工作量申报系统进行登录,也可以直接在地址栏输入“http://202.206.208.78/kywork/login/main.asp”进行登录。
用户名为教师的工资号,缺省密码为工资号。
说明:用户登录系统后,如果持续15分钟不进行任何操作,系统自动断开用户的连接,用户需重新登录才可进行其它操作。
三、密码服务用户登录系统后可以对密码进行修改。
建议用户在首次使用本系统时先对密码进行修改,并妥善保管。
四、分类统计教师可以查询本教研室各位教师过去各学期填报的工作量情况。
说明:查询结果仅包括通过工作量申报系统填报的工作量,不包括教学法工作量。
五、历史记录教师可以导出个人过去各学期填报的工作量明细。
六、工作量填报教学工作量分教学计划内工作量(包括讲课、兼辅导、考试、专职辅导、一般实验、课程设计、综合实验、实习、毕业设计等环节)和非教学计划内工作量(包括学术讲座、专题报告、指导青年教师、指导研究生、兼职补贴、编写教材、体育辅导、其它环节等)两部分。
1、教学计划内工作量该类工作量的填报以课程(课堂)为主线。
系统已经对本学期各课程的学时、选课人数等信息进行了预制。
教师根据自己承担的教学任务,选择院系→教研室→课程名称→课序号,点击“确定”按钮后,系统根据该课程的类型(如讲课、课程设计、实习、毕业设计等),自动进入该课程相对应教学环节的工作量填报页面。
教师工作量统计系统

教师工作量统计系统在当今高速发展的信息时代,教育行业也日新月异。
作为教育行业中的关键人员,教师的工作负荷日益增加。
为了更好地管理教师工作量,提高教育教学质量,教师工作量统计系统应运而生。
一、教师工作量的重要性教师是教育中的中坚力量,他们从事着教学任务、科研和管理工作,承担着培养学生的重任。
教师工作量的合理统计能够体现教师的工作量和质量,为学校管理和教师职业发展提供参考。
二、教师工作量统计系统的作用教师工作量统计系统是一种工具,它可以帮助学校对教师的工作量进行全面的记录和统计。
通过该系统,学校可以了解教师的工作分配情况,合理安排教职工的工作任务,提高工作效率。
三、教师工作量统计系统的功能教师工作量统计系统应具备以下功能:1. 记录教师的工作时间和任务分配情况;2. 统计教师的工作量,包括教学、科研和管理方面的任务;3. 统计教师的工作质量,包括教学效果、科研成果和管理成绩等;4. 提供管理层和教师个人查阅的接口,方便了解教师的工作情况。
四、教师工作量统计系统的建设教师工作量统计系统的建设需要考虑以下几点:1. 确定系统的技术平台,包括硬件设备和软件开发;2. 构建系统的数据库,包括教师信息、工作任务和成绩记录等;3. 设计用户界面,使系统易于操作和使用;4. 建立数据安全机制,确保信息的保密性和完整性。
五、教师工作量统计系统的应用教师工作量统计系统可以应用于以下几个方面:1. 教师的工作任务分配。
学校可以根据教师的工作量统计结果,合理安排教师的工作任务,保证教师的工作负荷均衡。
2. 教师的绩效考核。
教师工作量统计系统可以帮助学校评估教师的工作质量,对教师进行绩效考核,并给予相应的奖励和激励措施。
3. 学校的管理决策。
通过对教师工作量的统计,学校可以了解教师的工作情况,为学校的管理决策提供支持和参考。
六、教师工作量统计系统的优势教师工作量统计系统的优势主要包括:1. 提高工作效率。
通过自动化的数据统计和记录,减轻了教师的工作负担,提高了工作效率。
工作量系统填报使用说明

工作量系统填报使用说明一、系统登陆登陆网址:http://211.68.189.65或登陆校园网主页“网络服务”进入后点击“工作量申报系统”进入工作量申报页面(在校园网范围内访问速度较快)。
登录账号为教师号,初始用户密码为123,登录后请修改密码。
如您使用过程中忘记密码,可联系学院教学秘书恢复初始密码。
二、工作量填写任课教师登录后,点击填报按钮,在输入框输入教师或课程关键字,在检索出的课程上单击,即可选中该课程。
点击确定,系统根据教学方式不同进入不同的填写页面。
下面以讲授工作量填写为例。
页面上部是课程基本信息,中部是其他老师填报的该课程的工作量参考数据,下部是老师要核实的讲课学时。
如果数据正确无误,点击“保存”即可。
如果您上了课程的一部分,如20学时,在讲课学时框内将“42”改为“20”后系统将自动计算出工作量值,点击“保存”即可。
如还需要填报其它课程,请点击“返回”按钮,继续按上述步骤填报。
三、工作量查询工作量填写过程中及由学院审核上报后教师可在“申报查询”中点击姓名链接查询本单位教师填报情况,也可在“课程信息”中点击“课程名称”查询全校课程的填报情况。
四、工作量审核学院秘书登录后,点击审核,即可查看本学院工作量填写情况。
填写好的工作量必需上报到教务处以后才有效。
在给定的填报时限到来前,应通过“生成报告”随时关注填报情况,报告中会显示自动审核的结果,如果有遗漏或错误,则显示与该课程相关的填报数据,方便通知相关老师及时填写或更正。
填报完毕,没有错误可以点击“全部上报”,上报数据。
上报后的数据会锁定不允许修改。
学院秘书上报数据后,学校管理员点击“审核”,即可查看各学院工作量填写或上报情况。
点击学院名称可以查看该学院各任课教师的填写明细,如果发现错误可以将该学院工作量退回,等待数据修改后再上报。
如果没有发现错误可以将该学院工作量置为审核通过。
五、工作量公示学校审核后进入公示阶段。
公示期为3天,公示查询方法同“工作量查询”,公示内容主要为教学方式、课程类别等课程基本信息,教师填报的授课学时、实习周数、实习人数等填报信息。
高校教师工作量管理系统

高校教师工作量管理系统【摘要】本文介绍了高校教师工作量管理系统的相关内容。
在分析了研究背景、研究目的和研究意义。
在详细介绍了高校教师工作量管理系统的概述、功能、实施过程、优势和应用范围。
最后在总结了高校教师工作量管理系统的现状、发展趋势和未来展望。
通过本文的阐述,读者可以了解到高校教师工作量管理系统的重要性和价值,以及其在高校教育管理中的作用和发展前景。
【关键词】高校教师工作量管理系统、工作量分配、教学管理、效率提升、教师职业发展、教育行政、信息化管理、教学评估、学术研究、大数据分析、教学质量、教师培训、教学成果。
1. 引言1.1 研究背景高校教师工作量管理系统是一种有效的管理工具,能够帮助学校对教师的工作量进行合理安排和监控。
随着高校教育的不断发展和教学质量的提升,教师的工作量管理变得尤为重要。
在传统的管理模式下,学校往往很难准确了解每位教师的工作量情况,导致资源分配不够合理,教学质量无法得到有效保障。
为了解决这一问题,越来越多的高校开始引入教师工作量管理系统。
该系统可以对教师的各项工作进行量化分析,包括教学任务、科研项目、教学科研成果等,帮助学校更加科学地进行资源调配,提高教师的工作效率和教学质量。
尽管教师工作量管理系统在实际应用中显示出诸多优势,但也面临着一些挑战和问题。
如何确保系统的数据准确性和安全性,如何更好地整合系统与学校现有的管理模式等。
本论文旨在对高校教师工作量管理系统进行深入研究和探讨,旨在为高校教师工作量管理系统的发展提供有效的参考和建议。
1.2 研究目的研究目的旨在深入探讨高校教师工作量管理系统的设计、实施和应用情况,分析其对教师工作效率的影响及优势,并提出改进建议和解决方案。
具体目的包括:1. 探讨高校教师工作量管理系统在提高教师工作效率、减轻工作压力、提高教学质量等方面的作用和影响。
2. 分析高校教师工作量管理系统的设计和功能特点,探讨其在实际应用中的优势和不足之处。
3. 探讨高校教师工作量管理系统的实施过程和方法,分析成功案例与经验教训,为其他高校开展类似系统建设提供参考。
教师工作量统计系统

教师工作量统计系统的研究与实现学校:班级:姓名:摘要随着计算机及网络技术的飞速发展,Internet应用在全球范围内日益普及,当今社会正快速向信息化社会前进,信息系统的作用也越来越大。
教师工作量统计系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面.对于前者要求建立数据一致性和完整性强,数据安全性好的数据库.而对于后者则要求应用程序功能完备,易使用等特点。教师信息管理包括教师信息、教师工作量统计、计算工资和奖金,显然如果以人工的方式对其管理将耗费大量的人力、物力,本系统以此作为开发的目标,用以减轻教师管理人员的负担。本文对C#技术、数据库技术尤其是.NET技术进行了相关介绍,该系统是按照软件工程的思想进行设计和实现的。
重点介绍了教师工作量的计算,对系统中的其它功能也进行了相应阐述,并将遇到的问题和解决方法做了详细说明。
关键词:Visual Studio 2005;教师工作量统计系统;系统开发;C#AbstractWith the computer and network technology developing rapidly,Internet application rapidly advancing and today's society has become information society, the role of information systems is also growing.Counting system of teaching quantity is a typical management information system (MIS), which mainly includes the establishment of database and front-end application maintenance and development. The former calls for the establishment of data consistency and integrity, data security and good database.The latter calls for the application functions, easy to use features. Teachers information management including teacher information,teacher workload statistics,calculation of wages and bonuses is an obviously artificial method if its management will spend a lot of human and resources, the development of the system as a target to reduce the burden on teachers, administrators.In this paper, C# technology, database technology, especially technology .NET.The system is based on the idea of software engineering design and implementation.Focus on teacher workload, the calculation of wages and the other system functions and describe problems and solutions in details.Key words:Visual Studio 2005 ;Counting system of teaching quantity ;System Development ;C SHARP目录第1章概述 (1)1.1 系统开发的目的和意义 (1)1.2 国内.NET研究应用现状 (1)1.3 本文的研究工作 (2)第2章系统开发平台与相关技术简介 (4)2.1 (4)2.2 数据库及SQL Server2005 (5)2.3 C# (7)2.4 HTML (8)2.5 Visual Studio 2005 (8)2.6 AJAX (10)第3章系统需求分析与可行性研究 (11)3.1 系统需求分析 (11)3.2 可行性研究 (13)第4章系统总体设计 (15)4.1 系统总体功能设计 (15)4.2 系统数据库关系设计 (18)4.3 各个数据库的详细设计 (19)第5章系统实现 (23)5.1 登录页面和系统主页面的设计和实现 (23)5.2 工作量录入和计算和查询的系统实现 (26)5.3 教师的维护 (32)5.4 导入导出数据的实现 (34)5.5 系统的其他功能 (36)第6章系统测试 (38)6.1 系统功能测试 (38)6.2 系统容错性测试 (39)结论 (40)参考文献 (41)致谢 (42)第1章概述1.1 系统开发的目的和意义一直以来人们使用传统的人工方式来进行教师工作量的的管理。
高校教师工作量统计系统

一、毕业设计(论文)任务书摘要高校教师工作量统计研究中一个突出问题就是怎么最大限度地减少教师和管理人员花费在工作量统计上的时间和精力,为学校对教师考核提供科学的决策依据。
这类问题突出在两方面,一方面每学年教师完成工作量的多少是对教师进行考核的重要指标之一。
另一方面根据教师承担课程的类型、学生人数等参数,统计该教师每学期的教学工作量,并且可以统计其在某一段时间内的工作量。
从解决统计教师工作量的基本问题入手,讨论了工作量分为教学工作量和科研工作量两类。
在解决了工作量问题后,需要进一步解决教师承担课程的类型、学生人数等参数,统计该教师每学期的教学工作量,并且可以统计其在某一段时间内的工作量。
以基于B/S和SQL数据库技术为基本框架设计了高校教师工作量统计系统,提供了教师录入,查询等服务。
实际运行表明,高校教师工作量统计系统能减少教师和管理人员花费在工作量统计上的时间和精力。
关键词:教师工作量,重要指标,教师工作量统计系统,数据AbstractA prominent problem of college teacher workload statistics is how to minimize the teachers and administrators to spend in the workload statistics on the time and energy, provides scientific basis for the evaluation of teachers' school. This kind of problem is prominent in two aspects, one aspect of how much each year the teacher to complete the work is one of the important indicators for assessment of teachers. On the other hand, according to the teachers curriculum type, the number of students and other parameters, the statistics of the teachers every semester teaching workload, and can count in a certain period of time period. Starting from the basic problem solving statistical workload of teachers, the workload is divided into the workload of teaching and scientific research work two. In solving the problems need to be solved further workload, teachers curriculum type, the number of students and other parameters, the statistics of the teachers every semester teaching workload, and can count in a certain period of time period. The basic framework for the design of the University Teachers' workload statistics system based on B\/S, provide teachers to input, query services. The actual operation shows that, University Teachers' workload statistics system can reduce the teachers and administrators spend time and effort on workload statistics.Key Words:workload of Teachers,important indicator,Teacher workload statistics system,database目录毕业设计(论文)任务书 (Ⅰ)中文摘要 (II)Abstract (III)1绪言 (1)1.1课题背景 (1)1.2课题研究的目的和意义 (1)1.3目前研究概况 (2)2关键技术 (3)2.1 j2ee框架 (3)2.1.1 Spring技术 (3)2.1.2 Struts技术 (4)2.1.3 Hibernate技术 (4)2.2 开发语言java (4)2.3 B/S结构(Browser/Server) (5)2.4 数据库及SQL Server 2008 技术 (6)3需求分析 (8)3.1用户分析 (8)3.2功能需求 (9)3.3 开发与运行环境 (10)4高校教师工作量统计系统的设计与实现 (10)4.1 系统设计的基本思想 (10)4.1.1 系统设计思路 (10)4.1.2 系统设计原则 (10)4.2 系统逻辑结构设计 (11)4.2.1 系统工作流程设计 (11)4.2.2 系统工作量计算模块设计 (11)4.3 数据库设计 (12)4.4 用户登录窗体设计 (15)4.5 教师个人信息查看窗体 (16)4.6 用户信息查看窗体 (17)4.7 教师工作量录入窗体设计 (17)4.8 客户端应用程序 (19)4.9 工作量汇总窗体 (20)5 结论与展望 (20)5.1 测试 (20)5.1.1 测试环境 (20)5.1.2 测试过程 (20)5.1.3 测试结果 (21)5.2 结论 (21)致谢 (22)参考文献 (22)1 绪言本章阐述教师工作量统计研究背景、现状以及发展方向,明确指出了教师和管理在教师工作量统计时所浪费的时间和精力的问题1.1 课题背景随着我国教育体制改革的不断深化,大学办学规模不断扩大,师资队伍也随之壮大,所开课程也越来越多,与此同时,教师工作量的计算变得更加复杂。
教师工作量计算系统

The DesignandImplementation oftheSystemDesigned forCountingAmount ofTeacher'sWorkBased on the c/s Pattert
Abstract
With the developmentof the times, computertechnologyis applied inevery aspects of our life.Itmakesus toenjoy more convenient and individual services.
1.2 研究背景与研究意义
1.2.1 研究背景
随着计算机技术的飞速发展,计算机在各行各业中的应用迅速普及,计算机的应用在工作量管理管理中同样也得到了飞速的发展。对于工作量管理最基层的管理之一工作量管理来说,利用计算机实现工作量管理等日常工作来提高办事效率,是适应当今社会发展要求,推动工作量管理管理领域现代化快速发展的必要条件。虽然工作量只是工作量管理工作的一个环节,但是工作量管理是一项琐碎、复杂而又十分细致的工作。日常等工作量非常的大,如果用手工来操作,不仅工作量大而且容易出现错误。而利用计算机就不同了,一个完善的工作量管理系统可以帮你解决所有这方面的问题。同时计算机具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长等。这些优点能够极大地提高工作量管理管理的效率,达到事半功倍的效果。
摘 要
随着时代的发展,计算机技术越来越深入各行各业,为广大的用户提供了更为周到和便捷的服务。
教师工作量计算系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。本系统主要完成对教师信息和工作量的管理,包括添加、修改、删除,查询,打印信息以用户管理等六个方面。系统可以完成对各类信息的浏览、查询、添加、删除、修改等功能。系统的核心是教师工作量统计和排课之间的联系,当完成添加或删除操作时系统会自动计算出一时间段内的教师工作量。查询功能也是系统的核心之一。此外,系统有完整的用户添加、删除和密码修改功能,并具备报表打印功能。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. 选题与需求分析报告选题与需求分析报告要求:1.1选题背景意义:随着高等学校的快速发展,高校教师的规模越来越大,教职工的数量也越来越多,每年对高校教师的评教管理无疑是一项琐碎、复杂而又十分细致的工作。
关于工作量的计算,项目繁多,而且一般不允许出错。
在以往,教务部门对教师工作量的统计工作一直都是采取手工的方式,每年需填制大量的表格,这就会耗费工作人员大量的时间和精力。
如若采用专门的计算机管理系统,不仅能够保证工作量核算准确无误、快速输出,而且还可以利用计算机对有关工作量的各种信息进行统计,通过对工作量管理所需的信息管理,不仅把管理人员从繁琐的数据计算处理中解脱出来,而且优化了管理体系,使其高效化,简易化、智能化,也提高了透明性和互动性。
1.2同类软件调研分析:关于同类办公软件,目前大多数使用的是钉钉,钉钉作为目前较好的办公软件,功能更加强大,不仅能够统计出每个教师或者员工的使用时长,还能够统计出学生的学习情况,优点太多,缺点或者是个人建议就是操作可以简化一些,方便更多人使用。
1.3 详细的功能设计:8%(达到使用说明书的详细程度)计算每个老师在一个学期中所教课程的总工作量。
(教师单个教学任务的信息为:教师号、姓名、性别、职称、任教课程、班级、班级数目、理论课时、实验课时、单个教学任务总课时)1.教师信息处理:1)录入教师授课信息,包括教师号,教师姓名,性别,教师职称,任教课程,任教班级,班级数目,教师理论课课时,实验课时;2)修改教师信息;3)插入教师信息;4)删除教师信息;5)浏览教师授课教学信息;2.教师工作量信息处理1) 计算一个教师一个学期总的教学工作量。
总的教学工作量=所有单个教学任务总课时之和(理论课课时+实验课课时)。
2)教师数据查询:提示:输入教师号或其他信息,即读出所有数据信息,并显示出来。
3.教师综合信息输出提示:输出教师信息到屏幕。
整个程序的设计可分为7部分,即main函数,input_tea()函数,tea::modify()函数,tea::insert_tea()函数,tea::del_tea ()函数,tea::print()函数,tea::tongji函数。
A.main函数。
这是整个程序的主函数,调用其他函数来完成功能的实现。
B. input_tea()函数。
输入教师的一些基本信息。
C. tea::modify()函数。
修改教师的信息。
D. tea::del_tea()函数。
删除教师管理系统的教师信息。
E. tea::print()函数。
显示所输入的教师的信息。
F. tea::tongji函数。
通过教师号,查询教师的信息。
G. 退出系统。
退出运行界面。
2. 设计说明书2.1 类设计2.2主要技术难点和及实现方案/算法设计这一部分的难点是关于教师工作量的计算:我这里的算法啊: void tea::query(int num){int sum=0;int sum1=0,sum2=0;char id[20];cout<<"请输入需要查询的教师ID:";cin >> id;for(int i=0; i<num; i++){if(strcmp(id,tt[i].id)==0){sum1 += tt[i].num_ck;sum2 += tt[i].num_cs;sum += tt[i].num;}}cout<<"您查询的教师工作量如下"<<endl; cout<<"实验总课时:"<<sum2<<endl;cout<<"课程总课时: "<<sum1<<endl;cout<<"总课时:"<<sum<<endl;}void tea::tongji(int num){int n = 0;for(int i=0; i<num; i++){int flag = 0;if(n == 0){strcpy(j[n].id,tt[i].id);strcpy(j[n].name,tt[i].name);j[n].num_cs = tt[i].num_cs;j[n].num_ck = tt[i].num_ck;j[n].num = tt[i].num;//cout<<"1"<<endl;n++;}else{for(int jj=0; jj<n; jj++){if(strcmp(tt[i].id,j[jj].id) == 0) {flag++;j[jj].num_cs += tt[i].num_cs;j[jj].num_ck += tt[i].num_ck;j[jj].num = j[n].num_cs + j[n].num_ck; //cout<<"2"<<endl;}}if(flag == 0){strcpy(j[n].id,tt[i].id);strcpy(j[n].name,tt[i].name);j[n].num_cs = tt[i].num_cs;j[n].num_ck = tt[i].num_ck;j[n].num = tt[i].num;//cout<<"3"<<endl;n++;}}}//cout<<n<<endl;for(int i=0; i<n; i++){cout<<"教师姓名:" <<j[i].name <<endl;cout<<"教师总理论课时:"<<j[i].num_ck <<"教师总实验课时:"<<j[i].num_cs;cout<<"教师总课时:" <<j[i].num_ck + j[i].num_cs<<endl<<endl;}}3. 用户手册1.运行程序后,进入该程序的界面然后依次输入对应的数字实现对应的操作,例如输入1,实现录入教师信息的操作4. 程序源代码(必须有,不计分)源代码中要包括必要的注释信息 #include <iostream>#include <string>#include <windows.h>#include <cstdio>using namespace std;typedef struct Teacher{char id[20];char name[20];char sex[20];char zc[20];char cou[20];char bj[20];int num_b;int num_ck;int num_cs;int num;}teacher;typedef struct Tongji {char id[20];char name[20];int num_ck;int num_cs;int num;}tj;tj j[100];teacher tt[100];class tea{public:void menu();int input_tea(int num); void modify(int num);int insert_tea(int num); int del_tea(int num);void print(int num);void query(int num);void tongji(int num);void write(int num); };class TJ{public:void print(int num);void write(int num);};void tea::menu(){cout<<"\t\t欢迎使用教师工作量统计系统"<<endl; cout<<endl;cout<<"1 --- >> 录入教师信息"<<endl;cout<<"2 --- >> 修改教师信息"<<endl;cout<<"3 --- >> 插入教师信息"<<endl;cout<<"4 --- >> 删除教师信息"<<endl;cout<<"5 --- >> 浏览教师授课信息"<<endl; cout<<"6 --- >> 查询教师工作量"<<endl;cout<<"7 --- >> 统计教师工作量"<<endl;cout<<"8 --- >> 教师综合信息输出"<<endl; }int tea::input_tea(int num){cout<<"请输入教师的个数:";cin >> num;for(int i=0; i<num; i++){cout<<"请输入第"<<i+1<<"名教师的信息:"<<endl; cout<<"请输入教师号:"; cin>>tt[i].id;cout<<"请输入教师姓名:"; cin>>tt[i].name;cout<<"请输入教师性别:"; cin>>tt[i].sex;cout<<"请输入教师职称:"; cin>>tt[i].zc;cout<<"请输入认教课程:"; cin >> tt[i].cou; cout<<"请输入班级:"; cin>>tt[i].bj;cout<<"请输入班级数目:"; cin>>tt[i].num_b;cout<<"请输入理论课时:"; cin>>tt[i].num_ck; cout<<"请输入实验课时:"; cin>>tt[i].num_cs; tt[i].num = tt[i].num_ck + tt[i].num_cs;cout<<endl;}return num;}void tea::modify(int num){string id;int flag = 0;cout<<"请输入需要修改的教师ID:";cin>>id;for(int i=0; i<num; i++){if(id == tt[i].id){flag++;cout<<"请输入修改的信息"<<endl;cout<<"请输入教师姓名:"; cin>>tt[i].name; cout<<"请输入教师性别:"; cin>>tt[i].sex; cout<<"请输入教师职称:"; cin>>tt[i].zc;cout<<"请输入认教课程:"; cin >> tt[i].cou; cout<<"请输入班级:"; cin>>tt[i].bj;cout<<"请输入班级数目:"; cin>>tt[i].num_b;cout<<"请输入理论课时:"; cin>>tt[i].num_ck; cout<<"请输入实验课时:"; cin>>tt[i].num_cs; tt[i].num = tt[i].num_ck + tt[i].num_cs;}}if(flag == 0){cout<<"未找到该教师信息!!!"<<endl;}}int tea::insert_tea(int num){int i = num;cout<<"请输入新增的教师信息\n";cout<<"请输入教师号:"; cin>>tt[i].id;cout<<"请输入教师姓名:"; cin>>tt[i].name;cout<<"请输入教师性别:"; cin>>tt[i].sex;cout<<"请输入教师职称:"; cin>>tt[i].zc;cout<<"请输入认教课程:"; cin >> tt[i].cou;cout<<"请输入班级:"; cin>>tt[i].bj;cout<<"请输入班级数目:"; cin>>tt[i].num_b; cout<<"请输入理论课时:"; cin>>tt[i].num_ck; cout<<"请输入实验课时:"; cin>>tt[i].num_cs; tt[i].num = tt[i].num_ck + tt[i].num_cs;return ++i;}int tea::del_tea(int num){string id;int flag = 0;cout<<"请输入您想删除的ID:";cin>>id;for(int i=0; i<num; i++){if(id == tt[i].id){flag++;for(int j=i; j<num-1; j++){tt[j] = tt[j+1];}break;}}if(flag == 0){cout<<"未找到您输入的教师信息!!"; return num;}else{cout<<"删除成功!!!";return --num;}}void tea::print(int num){printf("教师姓名教师性别课程理论课时实验课时\n");for(int i=0; i<num; i++){printf("%-10s %-10s %-10s %-10d %-10d\n",tt[i].name,tt[i].s ex,tt[i].cou,tt[i].num_ck,tt[i].num_cs);}}void write(int num){FILE*fp = fopen("教师信息.txt","w");for(int i=0; i<num; i++){fprintf(fp,"%-10s %-10s %-10s %-10d %-10d\n",tt[i].name,tt[ i].sex,tt[i].cou,tt[i].num_ck,tt[i].num_cs);}fclose(fp);}void tea::query(int num){int sum=0;int sum1=0,sum2=0;char id[20];cout<<"请输入需要查询的教师ID:"; cin >> id;for(int i=0; i<num; i++){if(strcmp(id,tt[i].id)==0){sum1 += tt[i].num_ck;sum2 += tt[i].num_cs;sum += tt[i].num;}}cout<<"您查询的教师工作量如下"<<endl; cout<<"实验总课时:"<<sum2<<endl;cout<<"课程总课时: "<<sum1<<endl;cout<<"总课时:"<<sum<<endl;}void tea::tongji(int num){int n = 0;for(int i=0; i<num; i++){int flag = 0;if(n == 0){strcpy(j[n].id,tt[i].id);strcpy(j[n].name,tt[i].name);j[n].num_cs = tt[i].num_cs;j[n].num_ck = tt[i].num_ck;j[n].num = tt[i].num;//cout<<"1"<<endl;n++;}else{for(int jj=0; jj<n; jj++){if(strcmp(tt[i].id,j[jj].id) == 0){flag++;j[jj].num_cs += tt[i].num_cs;j[jj].num_ck += tt[i].num_ck;j[jj].num = j[n].num_cs + j[n].num_ck; //cout<<"2"<<endl;}}if(flag == 0){strcpy(j[n].id,tt[i].id);strcpy(j[n].name,tt[i].name);j[n].num_cs = tt[i].num_cs;j[n].num_ck = tt[i].num_ck;j[n].num = tt[i].num;//cout<<"3"<<endl;n++;}}}//cout<<n<<endl;for(int i=0; i<n; i++){cout<<"教师姓名:" <<j[i].name <<endl;cout<<"教师总理论课时:"<<j[i].num_ck <<"教师总实验课时:"<<j[i].num_cs;cout<<"教师总课时:" <<j[i].num_ck + j[i].num_cs<<endl<<endl;}}void TJ::print(int num){printf("教师姓名教师性别职称课程班级班级数量理论课时实验课时总课时\n");for(int i=0; i<num; i++){printf("%-10s %-10s %-10s %-10s %-10s %-10d %-10d %-10d %-8d\n",tt[i].name,tt[i].sex,tt[i].zc,tt[i].cou,tt[i].bj,tt[i ].num_b,tt[i].num_ck,tt[i].num_cs,tt[i].num);}}void TJ::write(int num){FILE *fp = fopen("课程基本信息.txt","w");for(int i=0; i<num; i++){fprintf(fp,"%-10s %-10s %-10s %-10s %-10s %-10s %-10d %-10 d %-10d %-8d\n",tt[i].id,tt[i].name,tt[i].sex,tt[i].zc,tt[i ].cou,tt[i].bj,tt[i].num_b,tt[i].num_ck,tt[i].num_cs,tt[i]. num);}fclose(fp);}int read(){char c;int i, j;int h = 0;FILE *fp = fopen("课程基本信息.txt", "r");if (fp != NULL)while ((c = fgetc(fp)) != EOF){if (c == '\n')h++;}}rewind(fp);for (i = 0; i < h; i++){fscanf(fp,"%s %s %s %s %s %s %d %d %d %d\n",tt[i].id,tt[i] .name,tt[i].sex,tt[i].zc,tt[i].cou,tt[i].bj,&tt[i].num_b,&t t[i].num_ck,&tt[i].num_cs,&tt[i].num);//printf("%-10s %-10s %-10s %-10s %-10s %-10d %-10d %-10d %-8d\n",tt[i].name,tt[i].sex,tt[i].zc,tt[i].cou,tt[i].bj,tt [i].num_b,tt[i].num_ck,tt[i].num_cs,tt[i].num);fclose(fp);return h;}int main(){tea t;TJ t1;int cho;int num = read();printf("%d\n",num);t.menu();while(1){cin>>cho;if(cho == 1){system("cls");num = t.input_tea(num);system("pause");}else if(cho == 2){system("cls");t.modify(num);system("pause");}else if(cho == 3){system("cls");num = t.insert_tea(num); system("pause");}else if(cho == 4){system("cls");num = t.del_tea(num);}else if(cho == 5){system("cls"); t.print(num);system("pause"); }else if(cho == 6){system("cls"); t.query(num);system("pause"); }else if(cho == 7){system("cls"); t.tongji(num); system("pause");}else if(cho == 8){system("cls"); t1.print(num); system("pause"); }system("cls");t.menu();}return 0;}5. 测试用例(必须有,不计分)1.键入2,修改教师新息2.键入3,插入教师信息3.键入5,浏览教师总体信息4.键入6,查询教师信息5.键入7,统计教师工作总量6.键入8,输出教师综合信息7,键入4,删除教师信息再查询教师综合信息,可见已删除6. 总结报告(必须有,不计分)对于这次我们组设计的教师工作量管理系统,我感觉自己花了很多的时间并投入很多努力,虽然总是一次一次出现错误,并感到特气馁,但我还是坚持了下来,通过同学和老师的帮助,把错误一个一个都解决掉了,最后才得以成功。