当前位置:文档之家› 教师工作量管理系统 课程设计 C语言

教师工作量管理系统 课程设计 C语言

.成绩评定表专业资料word.课程设计任务书专业资料word.专业资料word.目录第一章.需求分析 (4)第二章.总体设计 (5)第三章.详细设计图 (6)第四章.测试 (8)第五章.总结 (8)第六章.程序代码 (9)第七章.参考文献 (13)专业资料word.第一章.需求分析(一)研究背景:随着高等学校的快速发展,高校教师的规模越来越大,教职工的数量也越来越多,每年对高校教师的评教管理无疑是一项琐碎、复杂而又十分细致的工作。

关于工作量的计算,项目繁多,而且一般不允许出错。

在以往,教务部门对教师工作量的统计工作一直都是采取手工的方式,每年需填制大量的表格,这就会耗费工作人员大量的时间和精力。

如若采用专门的计算机管理系统,不仅能够保证工作量核算准确无误、快速输出,而且还可以利用计算机对有关工作量的各种信息进行统计,同时计算机具有手工管理所无法比拟的优点,例如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。

这些优点能够极大地提高教师工作量管理的效率,也是企业的科学化、正规化管理与世界接轨的重要条件。

使用计算机管理系统来管理高校教师工作量已成为目前的趋势,使用计算机可以高速,快捷地完成以上工作。

在计算机联网后,数据在网上传递,可以实现数据共享,避免重复劳动,规范数据管理行为,从而提高管理效率和水平。

专业资料word.高校教师工作量管理系统便是以计算机为工具,通过对工作量管理所需的信息管理,不仅把管理人员从繁琐的数据计算处理中解脱出来,而且优化了管理体系,使其高效化,简易化、智能化,也提高了透明性和互动性。

(二)产品功能:(1)工作量信息录入:教师一个教学任务的信息为:教师编号(不重复)、姓名、授课班级系数、理论课时、实验课时、教学任务总课时。

提供录入界面供用户输入数据,并以合理数据结构,诸如:结构数组或数据文件的形式加以保存。

(2)工作量计算:以教师为单位,计算出该教师一个学年的总工作量。

计算公式如下:a. 教学任务总课时。

计算方法如下表:b. 一个学年总的教学工作量=所有单个教学任务总课时之和*职称系数。

其中:正教授系数=1.2;副教授系统=1.1;其他职称系数=1。

(3)查找:能查找一个教师年度工作量明细、查找某教师年度总作量。

(6)系统以菜单方式工作,界面应清晰直观,便于用户操作。

第二章.总体设计专业资料word.main()1.主函数功能:调用菜单函数;main_menu()菜单函数2. 功能:提供用户选择的入口,进入其他模块进行相关处理;input_teacher_information()信息输入函数3. 功能:录入需查询的教师和课程的相关信息(结构数组形式);total_task ()4.查询教师工作量及报酬函数功能:调用相关模块,对指定的信息项进行查询;第三章详细设计图专业资料word.流程图主函数流程图:开始定义全局变量或大据主要菜单流程图:是输入选0菜单选项是否小于3或大于是专业资料word输入错误.工作量计算流程图:输出小班数目小班数是=2A=1.5 =word.=1.0职称测试第四章.专业资料word.第五章.总结对于这次我设计的教师工作管理,我感觉自己花了很多的时间并投入很多努力,虽然总是一次一次出现ERROR运行不了让人感到特气馁,但我还是坚持了下来,通过同学的帮助,把错误一个一个都解决掉了,最后才得以成功。

所以我要感谢老师和帮助过我的同学,让我在我的第一次课设中坚持了下来。

通过这次程序设计,使我加深了对C语言的认识,进一步熟悉了对C语言功能的灵活运用,而且加深了我对程序的理解和编写能力,通过文献资料和网络资料的帮助,使我对C语言程序设计这一基础学科又一次加深了认识,也意识到了其具有的强大功能和发展前景。

这会对以后的学习有所帮助。

第六章程序代码#include<stdio.h>#define MAX 100typedef struct course{int theory;int experiment;int class_num;float total;}course;struct teacher专业资料word.{int id;char name[10];course cour[10];float total;float reward;int profession;}teacher[MAX];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);break; case '2':total_task();break;case '0':exit(0);break;专业资料word.default:printf( error!\n);}return 0;}void main_menu(){printf(\ Welcome To Teacher's Management System\n);printf(\ --------------------------------------------------\n);printf(\ * 1>Input teacher's information *\n);printf(\ * 2>Inquire about the amount of teacher's total task *\n); printf(\ * 0>Exit *\n);printf(\ --------------------------------------------------\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(\ please input the number of teachers:\n);专业资料word.scanf(%d,&N);if (N>=MAX)printf( error!the number is reach limit!\n);for (j=1;j<=N;j++){printf(please input NO.%d teacher's information:\n,j); printf(\ please input teacher's id:);scanf(%d,&teacher[j].id);printf(\ please input teacher's name:\n);scanf(%s,teacher[j].name);printf(\ please choose teacher's positional titles:\n);printf(A. Full Professor B. Associate Professor C.Others\n); scanf(%c,&title);switch(title){case 'A':teacher[j]. profession=1.2;break;case 'B':teacher[j]. profession=1.1;break;case 'C':teacher[j]. profession=1.0;break;default:printf( error!\n);}printf(\ please input the number of teacher's courses:\n); scanf(%d,&teacher[j].num);for (i=0;i<teacher[j].num;i++)专业资料word.{printf(\ please input the NO.%d course's information:\n,i+1); printf(\ please input the number of theory course:\n); scanf(%d,&teacher[j].cour[i].theory);printf(\ please input the number of experiment course:\n); scanf(%d,&teacher[j].cour[i].experiment);printf(\ please input the number of class(>=2):);scanf(%d,&teacher[j].cour[i].class_num);if (teacher[j].cour[i].class_num<2)printf( terror ! the number of class need more than 2!\n); if (teacher[j].cour[i].class_num==2)teacher[j].cour[i].total=1.5*(teacher[j].cour[i].theory+teacher[j].cour[i].experiment);if (teacher[j].cour[i].class_num==3)teacher[j].cour[i].total=2*(teacher[j].cour[i].theory+teacher[j].cour[i].experiment);if (teacher[j].cour[i].class_num>=4)teacher[j].cour[i].total=2.5*(teacher[j].cour[i].theory+teacher[j].cour[i].experiment);}}for(j=1;j<=N;j++)专业资料word.{for(i=0;i<=teacher[j].num;i++){all_total=all_total+teacher[j].cour[i].total;teacher[j].total=teacher[j].profession*all_total;teacher[j].reward=30* teacher[j].total;}all_total=0;}printf(\ DO you want to exit?(y/n)\n);if(getchar()=='y')main_menu();}void total_task(){int N;char H;printf(please input teacher's id:\n);scanf(%d,&N);printf(NAME ID TOTAL TASK REWARD\n);printf(%-7s%-8d%-14.1f%-9.1f,teacher[N].name,teacher[N].id,teacher[N] .total,teacher[N].reward);printf(\ DO you want to exit?(y\n)\n);H=getchar();专业资料word.if(H=='y')main_menu();}专业资料word----------------学资学习网---------------。

相关主题