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

上传人:b****6 文档编号:11902313 上传时间:2023-06-03 格式:DOCX 页数:13 大小:121.72KB
下载 相关 举报
教师工作量管理系统课程设计C语言.docx_第1页
第1页 / 共13页
教师工作量管理系统课程设计C语言.docx_第2页
第2页 / 共13页
教师工作量管理系统课程设计C语言.docx_第3页
第3页 / 共13页
教师工作量管理系统课程设计C语言.docx_第4页
第4页 / 共13页
教师工作量管理系统课程设计C语言.docx_第5页
第5页 / 共13页
教师工作量管理系统课程设计C语言.docx_第6页
第6页 / 共13页
教师工作量管理系统课程设计C语言.docx_第7页
第7页 / 共13页
教师工作量管理系统课程设计C语言.docx_第8页
第8页 / 共13页
教师工作量管理系统课程设计C语言.docx_第9页
第9页 / 共13页
教师工作量管理系统课程设计C语言.docx_第10页
第10页 / 共13页
教师工作量管理系统课程设计C语言.docx_第11页
第11页 / 共13页
教师工作量管理系统课程设计C语言.docx_第12页
第12页 / 共13页
教师工作量管理系统课程设计C语言.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

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

《教师工作量管理系统课程设计C语言.docx》由会员分享,可在线阅读,更多相关《教师工作量管理系统课程设计C语言.docx(13页珍藏版)》请在冰点文库上搜索。

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

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

成绩评定表

学生姓名

张宁

班级学号

1209030104

专业

统计学

课程设计题目

教师工作量管理系统

 

 

组长签字:

成绩

 

日期

20年月日

 

课程设计任务书

学院

理学院

专业

统计学

学生姓名

左茹

班级学号

1209030104

课程设计题目

设计一个教师工作量管理系统:

根据老师的上课情况,按照班级系数、职称等推算出工作量及报酬。

实践教学要求与任务:

1、进一步培养学生结构化程序设计的思想,加深对高级语言基本语言要素和控制结构的理解;

2、针对C语言中的重点和难点内容进行训练,独立完成有一定工作量的程序设计任务,同时强调好的程序设计风格。

3、本次设计的教师工作量管理系统,需要运用到结构体、循环、数组、函数调用等大量知识点。

通过这个设计,来增加C语言知识的运用能力和自主学习能力。

4、通过此次课程设计,加深对结构化程序设计思想的理解,能对系统功能进行分析,并设计合理的模块化结构。

进一步掌握C语言中有关重要的数据结构,诸如:

数组、结构数组…等在程序开发中的应用。

 

工作计划与进度安排:

第一天:

确定题目,查找相关资料

第二天:

程序设计

第三、四天:

程序调试、测试

第五天:

答辩

指导教师:

201年月日

专业负责人:

201年月日

学院教学副院长:

201年月日

第一章.需求分析..................................................4

第二章.总体设计..................................................5

第三章.详细设计图..................................................6

第四章.测试.......................................................8

第五章.总结.......................................................8

第六章.程序代码...................................................9

第七章.参考文献...................................................13

 

 

第一章.需求分析

(一)研究背景:

随着高等学校的快速发展,高校教师的规模越来越大,教职工的数量也越来越多,每年对高校教师的评教管理无疑是一项琐碎、复杂而又十分细致的工作。

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

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

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

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

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

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

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

(二)产品功能:

(1)工作量信息录入:

教师一个教学任务的信息为:

教师编号(不重复)、姓名、授课班级系数、理论课时、实验课时、教学任务总课时。

提供录入界面供用户输入数据,并以合理数据结构,诸如:

结构数组或数据文件的形式加以保存。

(2)工作量计算:

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

计算公式如下:

a.教学任务总课时。

计算方法如下表:

小班班级数目

单个教学任务总课时

2

1.5*(理论课时+实验课时)

3

2*(理论课时+实验课时)

>=4

2.5*(理论课时+实验课时)

b.一个学年总的教学工作量=所有单个教学任务总课时之和*职称系数。

其中:

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

(3)查找:

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

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

第二章.总体设计

 

1.主函数main()

功能:

调用菜单函数;

2.菜单函数main_menu()

功能:

提供用户选择的入口,进入其他模块进行相关处理;

3.信息输入函数input_teacher_information()

功能:

录入需查询的教师和课程的相关信息(结构数组形式);

4.查询教师工作量及报酬函数total_task()

功能:

调用相关模块,对指定的信息项进行查询;

第三章详细设计图

流程图

主函数流程图:

 

菜单选项是否小于0或大于3

 

主要菜单流程图:

 

工作量计算流程图:

 

职称=1.0

 

第四章.测试

 

第五章.总结

对于这次我设计的教师工作管理,我感觉自己花了很多的时间并投入很多努力,虽然总是一次一次出现ERROR运行不了让人感到特气馁,但我还是坚持了下来,通过同学的帮助,把错误一个一个都解决掉了,最后才得以成功。

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

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

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

 

第六章程序代码

#include

#defineMAX100

typedefstructcourse

{

inttheory;

intexperiment;

intclass_num;

floattotal;

}course;

structteacher

{

intid;

charname[10];

coursecour[10];

intnum;

floattotal;

floatreward;

intprofession;

}teacher[MAX];

intmain()

{intN=0,K;

voidmain_menu();

voidinput_teacher_information();

voidtotal_task();

main_menu();

K=getchar();

switch(K)

{

case'1':

input_teacher_information(N);break;

case'2':

total_task();break;

case'0':

exit(0);break;

default:

printf("terror!

\n");

}

clrscr();

return0;

}

voidmain_menu()

{

printf("\tWelcomeToTeacher'sManagementSystem\n");

printf("\t--------------------------------------------------\n");

printf("\t*1>Inputteacher'sinformation*\n");

printf("\t*2>Inquireabouttheamountofteacher'stotaltask*\n");

printf("\t*0>Exit*\n");

printf("\t--------------------------------------------------\n");

printf("pleaseinputtheordernumberyouneed:

\n");

}

voidinput_teacher_information()

{

inti,j,N;chartitle;

floatall_total=0;

printf("\tpleaseinputthenumberofteachers:

\n");

scanf("%d",&N);

if(N>=MAX)

printf("terror!

thenumberisreachlimit!

\n");

for(j=1;j<=N;j++)

{printf("pleaseinputNO.%dteacher'sinformation:

\n",j);

printf("\tpleaseinputteacher'sid:

");

scanf("%d",&teacher[j].id);

printf("\tpleaseinputteacher'sname:

\n");

scanf("%s",teacher[j].name);

printf("\tpleasechooseteacher'spositionaltitles:

\n");

printf("A.FullProfessorB.AssociateProfessorC.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("terror!

\n");

}

printf("\tpleaseinputthenumberofteacher'scourses:

\n");

scanf("%d",&teacher[j].num);

for(i=0;i

{

printf("\tpleaseinputtheNO.%dcourse'sinformation:

\n",i+1);

printf("\tpleaseinputthenumberoftheorycourse:

\n");

scanf("%d",&teacher[j].cour[i].theory);

printf("\tpleaseinputthenumberofexperimentcourse:

\n");

scanf("%d",&teacher[j].cour[i].experiment);

printf("\tpleaseinputthenumberofclass(>=2):

");

scanf("%d",&teacher[j].cour[i].class_num);

if(teacher[j].cour[i].class_num<2)

printf("tterror!

thenumberofclassneedmorethan2!

\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++)

{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("\tDOyouwanttoexit?

(y/n)\n");

if(getchar()=='y')

main_menu();

}

voidtotal_task()

{

intN;charH;

printf("pleaseinputteacher'sid:

\n");

scanf("%d",&N);

printf("NAMEIDTOTALTASKREWARD\n");

printf("%-7s%-8d%-14.1f%-9.1f",teacher[N].name,teacher[N].id,teacher[N].total,teacher[N].reward);

printf("\tDOyouwanttoexit?

(y\n)\n");

H=getchar();

if(H=='y')

main_menu();

}_

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2