1、教师工作量管理系统课程设计C语言 成 绩 评 定 表学生姓名张宁班级学号04专 业统计学课程设计题目教师工作量管理系统 评语组长签字:成绩日期 20 年 月 日课程设计任务书学 院理学院专 业统计学学生姓名左茹班级学号04课程设计题目设计一个教师工作量管理系统:根据老师的上课情况,按照班级系数、职称等推算出工作量及报酬。实践教学要求与任务:1、 进一步培养学生结构化程序设计的思想,加深对高级语言基本语言要素和控制结构的理解;2、 针对C语言中的重点和难点内容进行训练,独立完成有一定工作量的程序设计任务,同时强调好的程序设计风格。3、 本次设计的教师工作量管理系统,需要运用到结构体、循环、数组、
2、函数调用等大量知识点。通过这个设计,来增加 C语言知识的运用能力和自主学习能力。4、通过此次课程设计,加深对结构化程序设计思想的理解,能对系统功能进行分析,并设计合理的模块化结构。进一步掌握C语言中有关重要的数据结构,诸如:数组、结构数组等在程序开发中的应用。工作计划与进度安排:第一天:确定题目,查找相关资料第二天:程序设计第三、四天:程序调试、测试第五天:答辩指导教师: 201 年 月 日专业负责人:201 年 月 日学院教学副院长:201 年 月 日第一章. 需求分析.4第二章. 总体设计.5第三章. 详细设计图.6第四章. 测试.8第五章. 总结.8第六章. 程序代码.9第七章. 参考文
3、献.13 第一章需求分析(一) 研究背景:随着高等学校的快速发展,高校教师的规模越来越大,教职工的数量也越来越多,每年对高校教师的评教管理无疑是一项琐碎、复杂而又十分细致的工作。关于工作量的计算,项目繁多,而且一般不允许出错。在以往,教务部门对教师工作量的统计工作一直都是采取手工的方式,每年需填制大量的表格,这就会耗费工作人员大量的时间和精力。如若采用专门的计算机管理系统,不仅能够保证工作量核算准确无误、快速输出,而且还可以利用计算机对有关工作量的各种信息进行统计,同时计算机具有手工管理所无法比拟的优点,例如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地
4、提高教师工作量管理的效率,也是企业的科学化、正规化管理与世界接轨的重要条件。使用计算机管理系统来管理高校教师工作量已成为目前的趋势,使用计算机可以高速,快捷地完成以上工作。在计算机联网后,数据在网上传递,可以实现数据共享,避免重复劳动,规范数据管理行为,从而提高管理效率和水平。高校教师工作量管理系统便是以计算机为工具,通过对工作量管理所需的信息管理,不仅把管理人员从繁琐的数据计算处理中解脱出来,而且优化了管理体系,使其高效化,简易化、智能化,也提高了透明性和互动性。(二) 产品功能: (1)工作量信息录入:教师一个教学任务的信息为:教师编号(不重复)、姓名、授课班级系数、理论课时、实验课时、教
5、学任务总课时。提供录入界面供用户输入数据,并以合理数据结构,诸如:结构数组或数据文件的形式加以保存。 (2)工作量计算:以教师为单位,计算出该教师一个学年的总工作量。计算公式如下:a. 教学任务总课时。计算方法如下表:小班班级数目 单个教学任务总课时 2 *(理论课时+实验课时) 3 2*(理论课时+实验课时)=4 *(理论课时+实验课时)b. 一个学年总的教学工作量=所有单个教学任务总课时之和*职称系数。其中:正教授系数=;副教授系统=;其他职称系数=1。 (3)查找:能查找一个教师年度工作量明细、查找某教师年度总作量。(6)系统以菜单方式工作,界面应清晰直观,便于用户操作。第二章总体设计1
6、.主函数 main()功能:调用菜单函数;2.菜单函数main_menu()功能:提供用户选择的入口,进入其他模块进行相关处理;3.信息输入函数 input_teacher_information()功能:录入需查询的教师和课程的相关信息(结构数组形式);4.查询教师工作量及报酬函数total_task ()功能:调用相关模块,对指定的信息项进行查询;第三章 详细设计图流程图主函数流程图 : 否 菜单选项是否小于0或大于3主要菜单流程图: 工作量计算流程图: 职称=副教授职称=第四章.测试第五章.总结对于这次我设计的教师工作管理,我感觉自己花了很多的时间并投入很多努力,虽然总是一次一次出现ER
7、ROR运行不了让人感到特气馁,但我还是坚持了下来,通过同学的帮助,把错误一个一个都解决掉了,最后才得以成功。所以我要感谢老师和帮助过我的同学,让我在我的第一次课设中坚持了下来。通过这次程序设计,使我加深了对C语言的认识,进一步熟悉了对C语言功能的灵活运用,而且加深了我对程序的理解和编写能力,通过文献资料和网络资料的帮助,使我对C语言程序设计这一基础学科又一次加深了认识,也意识到了其具有的强大功能和发展前景。这会对以后的学习有所帮助。第六章 程序代码#include#define MAX 100typedef struct courseint theory;int experiment;int
8、class_num;float total;course; struct teacherint id;char name10;course cour10;int num;float total;float reward;int profession;teacherMAX;int main()int N=0,K; void main_menu(); void input_teacher_information(); void total_task(); main_menu(); K=getchar(); switch(K) case 1:input_teacher_information(N);
9、break; case 2:total_task();break; case 0:exit(0);break; default:printf(terror!n); clrscr(); return 0;void main_menu() printf(t Welcome To Teachers Management Systemn); printf(t-n); printf(t* 1Input teachers information *n); printf(t* 2Inquire about the amount of teachers total task *n); printf(t* 0E
10、xit *n); printf(t-n); printf(please input the order number you need:n);void input_teacher_information()int i,j,N;char title;float all_total=0;printf(tplease input the number of teachers:n);scanf(%d,&N);if (N=MAX)printf(terror!the number is reach limit!n);for (j=1;j=N;j+)printf(please input NO.%d tea
11、chers information:n,j);printf(tplease input teachers id:);scanf(%d,&teacherj.id);printf(tplease input teachers name:n);scanf(%s,teacherj.name);printf(tplease choose teachers positional titles:n);printf(A. Full Professor B. Associate Professor n);scanf(%c,&title);switch(title)case A:teacherj. profess
12、ion=;break; case B:teacherj. profession=;break; case C:teacherj. profession=;break; default:printf(terror!n);printf(tplease input the number of teachers courses:n);scanf(%d,&teacherj.num);for (i=0;i=2):);scanf(%d,&teacherj.couri.class_num);if (teacherj.couri.class_num=4)teacherj. couri.total=*(teach
13、erj.couri.theory +teacherj.couri.experiment);for(j=1;j=N;j+)for(i=0;i=teacherj.num;i+) all_total=all_total+teacherj.couri.total; teacherj.total=teacherj.profession*all_total; teacherj.reward=30* teacherj.total; all_total=0;printf(tDO you want to exit(y/n)n);if(getchar()=y)main_menu();void total_task()int N;char H;printf(please input teachers id:n);scanf(%d,&N);printf(NAME ID TOTAL TASK REWARDn);printf(%-7s%-8d%-14.1f%-9.1f,teacherN.name,teacherN.id,teacherN.total,teacherN.reward);printf(tDO you want to exit(yn)n);H=getchar();if(H=y)main_menu();
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1