教师工作量管理系统_课程设计报告_C语言
c++课程设计—教师管理系统报告 (1)

电气与信息学院计算机科学与技术系《面向对象编程技术》课程设计报告课题名称专业计算机科学与技术班级微机1326学号A19130428姓名杨芮指导教师杜勇2014年6月2日第一章课程设计内容........................................................................................................... 21.1 课程设计目的................................................................................................................ 21.2 课程设计功能说明.......................................................................................................... 21.2.0 功能总概述........................................................................................................... 21.2.1 各项功能说明..................................................................................................... 31.3 各项功能的需求标准................................................................................................... 5第二章课程设计环境与原理....................................................................................................... 62.1 设计环境与模块的划分.................................................................................................. 62.1.1软件设计环境........................................................................................................ 62.1.2软件模块的划分.................................................................................................... 62.2.3主要流程图............................................................................................................ 7第三章软件的设计过程....................................................................................... 103.1 各软件模块之间的调用方式.................................................................................... 103.2 软件中实现各项功能的函数与程序代码.................................................................. 10第四章设计结果与分析......................................................................................................... 164.1 软件使用结果.............................................................................................................. 16总结..................................................................................................................................... 18第一章课程设计内容1.1 课程设计目的经过了对课本《C++面对对象程序设计》这本书中的学生管理系统综合应用实例的学习,为了让自己能够对C++语言设计有更加深入、深刻的理解和掌握,希望通过实践设计出类似于学生管理系统的教师管理系统来提升自己对C++语言的认识。
C语言课程设计课程管理系统实验报告

课程设计实验报告课程管理系统计算机科学与工程学院14060307班董永博14060307102陈佳兴14060307101田晨光14060307113赵炳舒14060307121欧静14060307126目录题目• ---------------------------------------- 3分析过程与思路・------------------------------- 3算法• ---------------------------------------- 5函数模块介绍• --------------------------------- 9源程序… -------------------------------------- 10运行结果• • ---------------------------------- 36课程设计总结• -------------------------------- 42题目课程管理系统分析过程与思路课程管理系统首先要能够分别实现课程信息的增加、删除、查询、修改。
为了增加程序的实用性,应当能够将输入的课程信息通过存文件的方式将课程信息存入硬盘。
而使用系统的可能是学生和管理员两类,因此要实现根据登录类型来开放应有的功能。
由于课程信息包含很多成员,例如课程编码、课程名等。
因此应该用链表对信息进行记录,由于不清楚课程总数,因此需要用动态链表。
动态链表的使用需要声明合适的结构体,数据域中应包含课程所包含的各个成员、指针域用来指向下一个结点。
动态链表的建立需要用到malloc函数。
对已经建立的链表需要存入文件,需要用到fwrite、fread、feof等文件处理函数,保存文件要多次用到,因此应该独立做一个函数。
删除函数要用到诸如free函数,为了防止删除的结点为首结点,删除后找不到头结点,因此删除函数应该是一个指针函数,用以返回删除后的新的头结点。
登录函数要返回一个值用以在其他函数中判断登录类型,以便针对用户开放相应的功能。
C语言教师管理系统

通信与信息工程学院高级语言课程设计班级:电子信息工程1503姓名:周阳刘锦谷静霆学号:1507050314 1507050321 1507050334指导教师:刘晓佩李远征王静倪云峰设计时间:2016-07-04 ~ 2016-07-24成绩:评语:通信与信息工程学院二〇一七年一、课程设计要求设计教师工作管理系统,并拥有如下功能。
1.计算并显示每个老师在一个学期中所教课程的总工作量。
2.输入教师姓名可以查询教师信息。
3.可以浏览并删改教师信息。
4.完成教师信息二、程序的功能设计三、程序的数据结构C 语言使用结构体来扩展自定义的数据类型,数据结构如下: #pragma pack (4) //设置结构体的对其方式 typedef struct TEACH {//数据域char ArrTeachNum[10]; //教工号 char ArrTeachName[10]; //姓名 char ArrTeachSex[4]; //性别 char ArrTitle[10]; //职称 char ArrSubject[20]; //所教课程 char ArrClass[36]; //所教班级 unsigned int ClassNum ; //班级数目 unsigned int TheoryClaHour ; //理论课时主函数添加一个教师的信息 VoidAddTeaMsg(TE ACHER Teacher);删除一个教师的信息VoidDeleTeacher(PTEACH pNode);查找一个教师信息PTEACHSearchTeach(char * Name);显示所有教师信息保存voidShowAllTeach er(void );unsigned int practicerClaHour ; //实践课时unsigned int AllClaHour ; //总课时//指针域struct TEACH *pNext; //指向下一个节点}四、程序的函数设计1.函数的功能描述main函数功能:调用菜单函数所示的函数;Menu()函数功能:显示给用户所有的功能AddTeaMsg()函数功能:增一个教师信息SearchTeach()函数功能:查找一个教师信息DeleTeacher()函数功能:删除一个教师信息ShowAllTeacher()函数功能:显示所有老师信息2.函数的调用关系main函数调用所有的子函数来完成相应操作;查找,删除,修改信息函数都必须调用查找函数。
教师信息管理系统(C语言课程设计)

教师信息管理系统(C语言课程设计)课程设计任务书计算机科学与技术专业年级班一、设计题目教师信息管理系统设计二、主要内容教师信息包括教师号、姓名、性别、年龄、学历、职称、工资、住址、电话等(教师号不重复)。
试设计一教师信息管理系统,使之能提供以下功能:(1)系统以菜单方式工作(2)教师信息录入功能--输入(3)教师信息删除功能(4)教师信息浏览功能--输出(5)查询和排序功能:(至少一种查询方式) --算法按教师号查询按职称查询等三、具体要求围绕课程设计的目的和意义,基本要求如下:1、认真阅读《C语言课程设计》指导书,明确课程设计的目的、意义和要求;2、快速总结C程序设计语言的精髓,如:函数的概念、函数的设计和函数的调用;3、快速熟悉Tuber C 或C++的上机环境。
能熟练进行高级编辑操作(特别是字块操作);熟悉步进式、断点跟踪的程序调试方法,提高工作效率。
4、根据“课程设计题目”,采用结构化的程序设计思想,确定系统的总体设计方案、确"定时间进度。
如果是多人共一题,则要首先完成小组内的人员分工及安排,不允许重题现象。
5.学习并了解良好的程序设计风格。
按质、按量、并按时间完成课程设计的任务。
6.提供可运行的课程设计系统,参加上机面试答辩。
本次课程设计的重点是:学会设计并编写函数,掌握好各函数之间的调用关系;利用文件操作函数,建立数据库并完成对数据库的各种操作;掌握几种典型算法的应用(如:冒泡法、选择排序法和折半查找法)。
同时锻炼学生根据题目进行分析、设计、编码、调试程序和书写必要文档的综合处理能力,从实践中学习并体会程序设计的结构化思想和设计方法。
四、进度安排依照教学计划,课程设计时间为3周。
按照软件工程的思想,软件系统的分析设计至关重要,并要充分重视书写“文档”。
避免甚至杜绝“拿到题目就编码”的现象。
建议将时间分为三个阶段:第一阶段,根据题目要求,拿出系统的总体设计方案:即构思各程序模块的算法,并画出相应的N-S图,同时编写相应的文档;第二阶段,根据N-S图编写程序代码并单独调试,再将调试通过的各个子模块进行集成调试;第三阶段,归纳文档资料,按要求填写在《课程设计说明书》上,并参加答辩。
教务管理系统c语言课程设计

教务管理系统c语言课程设计一、教学目标本课程的教学目标是使学生掌握教务管理系统的基本原理和设计方法,能够运用C语言进行简单的教务管理系统开发。
具体分为以下三个部分:1.知识目标:使学生掌握C语言的基本语法、数据结构、算法和面向对象编程思想,了解教务管理系统的功能和结构。
2.技能目标:培养学生具备运用C语言进行程序设计的能力,能够独立完成简单的教务管理系统模块设计与实现。
3.情感态度价值观目标:培养学生对编程事业的热爱,提高学生解决实际问题的积极性,培养学生的团队协作精神和自主学习能力。
二、教学内容本课程的教学内容主要包括以下几个部分:1.C语言基础知识:数据类型、运算符、表达式、语句、函数等。
2.数据结构:数组、链表、栈、队列、树、图等。
3.算法:排序算法、查找算法、常用算法分析等。
4.面向对象编程:类、对象、封装、继承、多态等。
5.教务管理系统设计:系统需求分析、系统架构设计、模块划分、功能实现等。
三、教学方法为了达到本课程的教学目标,我们将采用以下几种教学方法:1.讲授法:通过讲解知识点,使学生掌握基本概念和原理。
2.案例分析法:分析实际案例,使学生了解教务管理系统的应用场景和设计方法。
3.实验法:让学生动手编写代码,培养实际编程能力。
4.讨论法:分组讨论问题,培养学生的团队协作精神和解决问题的能力。
四、教学资源为了支持本课程的教学内容和教学方法,我们将准备以下教学资源:1.教材:《C程序设计语言》(K&R)、《C Primer Plus》等。
2.参考书:《数据结构与算法分析》(C语言版)、《深度探索C++对象模型》等。
3.多媒体资料:教学PPT、视频教程、在线编程练习等。
4.实验设备:计算机、网络环境、编程调试工具等。
五、教学评估本课程的评估方式包括以下几个部分:1.平时表现:通过课堂参与、提问、讨论等环节,评估学生的学习态度和积极性。
2.作业:布置课后作业,评估学生的编程能力和对知识的理解程度。
教师管理系统c语言课程设计

教师管理系统c语言课程设计一、教学目标本课程的目标是让学生掌握教师管理系统的设计与实现,具备运用C语言进行程序设计的能力。
具体目标如下:1.知识目标:学生需掌握C语言的基本语法、数据类型、运算符、控制结构、函数、数组、指针等基本概念。
2.技能目标:学生能够运用C语言编写简单的程序,解决实际问题。
通过本课程的学习,使学生具备教师管理系统的设计与实现能力。
3.情感态度价值观目标:培养学生对计算机科学的兴趣,提高学生独立思考、创新解决问题的能力,培养学生的团队协作精神。
二、教学内容本课程的教学内容主要包括C语言的基本语法、数据类型、运算符、控制结构、函数、数组、指针等基本概念,以及教师管理系统的设计与实现。
具体安排如下:1.C语言基本语法与数据类型2.运算符与控制结构3.函数与数组4.指针与字符串5.文件操作6.教师管理系统设计与实现三、教学方法本课程采用讲授法、案例分析法、实验法等多种教学方法,以激发学生的学习兴趣和主动性。
1.讲授法:用于讲解C语言的基本语法、数据类型、运算符、控制结构、函数、数组、指针等基本概念。
2.案例分析法:通过分析实际案例,使学生更好地理解教师管理系统的设计与实现。
3.实验法:让学生亲自动手编写程序,解决实际问题,提高学生的实践能力。
四、教学资源本课程所需教学资源包括教材、参考书、多媒体资料、实验设备等。
1.教材:选用权威、实用的C语言教材,为学生提供系统、全面的学习资料。
2.参考书:提供丰富的课外阅读资料,帮助学生拓展知识面。
3.多媒体资料:制作精美的课件,生动形象地展示课程内容。
4.实验设备:为学生提供充足的计算机设备,确保实验教学的顺利进行。
五、教学评估本课程的评估方式包括平时表现、作业、考试等。
评估方式应客观、公正,能够全面反映学生的学习成果。
1.平时表现:评估学生在课堂上的参与程度、提问回答等情况,以了解学生的学习状态。
2.作业:布置适量作业,评估学生的知识掌握程度和实际编程能力。
c管理系统课程设计报告

c 管理系统课程设计报告一、课程目标知识目标:1. 让学生掌握管理系统的基础知识,包括管理系统的定义、功能、类型及发展历程;2. 帮助学生了解管理系统的基本组成部分,如硬件、软件、数据、网络和人员等;3. 引导学生掌握管理系统的设计原则和步骤,培养学生具备分析、设计和优化管理系统的能力。
技能目标:1. 培养学生运用所学知识对现实生活中的管理系统案例进行分析和评价的能力;2. 提高学生利用现代技术手段,如计算机软件、网络等,解决管理系统问题的能力;3. 培养学生团队合作精神,学会在项目中进行有效沟通、分工与协作。
情感态度价值观目标:1. 激发学生对管理系统学科的兴趣,培养学生主动探索、积极创新的科学精神;2. 培养学生具备良好的职业道德和敬业精神,认识到管理系统在企业和组织中的重要性;3. 引导学生关注管理系统在我国经济社会发展中的作用,增强学生的社会责任感和使命感。
课程性质:本课程为理论与实践相结合的课程,旨在帮助学生掌握管理系统的基本原理和方法,培养学生的实际操作能力。
学生特点:本课程针对的是高年级学生,他们已经具备一定的计算机基础和理论知识,具有较强的学习能力和探究精神。
教学要求:教师在教学过程中要注重理论与实践相结合,充分调动学生的积极性,鼓励学生参与课堂讨论和实践活动,提高学生的实际操作能力。
同时,教师需关注学生的学习进度,及时调整教学方法和内容,确保课程目标的实现。
通过本课程的学习,使学生能够在实际工作中更好地运用所学知识,为企业和组织的发展贡献力量。
二、教学内容本课程教学内容主要包括以下几部分:1. 管理系统概述:介绍管理系统的定义、功能、类型及发展历程,使学生全面了解管理系统的基础知识。
2. 管理系统的基本组成部分:讲解硬件、软件、数据、网络和人员等管理系统的基本组成部分,分析各部分之间的关系。
3. 管理系统的设计原则和步骤:阐述管理系统设计的基本原则,如系统化、模块化、用户导向等,以及设计步骤,如需求分析、系统设计、系统实施等。
教室管理系统c语言课程设计

教室管理系统c语言课程设计一、课程目标知识目标:1. 学生能掌握C语言中结构体、数组、函数等基本概念,并能运用这些知识设计教室管理系统的基本框架。
2. 学生能理解文件操作在教室管理系统中的应用,掌握文件的读写、存储等基本操作。
3. 学生了解教室管理系统的需求分析、功能模块划分,掌握模块化编程思想。
技能目标:1. 学生能够运用C语言编写程序,实现教室管理系统的各项功能,如添加、删除、查询教室信息等。
2. 学生能够运用所学知识解决实际编程问题,具备一定的程序调试和优化能力。
3. 学生能够通过本课程的学习,培养自己的团队协作、沟通能力,提高问题解决能力。
情感态度价值观目标:1. 学生通过参与教室管理系统的设计与实现,培养对计算机编程的兴趣和热情,提高学习积极性。
2. 学生在学习过程中,培养严谨、认真、负责的学习态度,树立良好的编程习惯。
3. 学生能够认识到编程在解决实际问题中的重要性,增强对信息技术的信心,提高社会责任感。
本课程针对高中年级学生,结合C语言学科特点,以实用性为导向,旨在培养学生的编程能力、问题解决能力和团队协作能力。
课程目标具体、可衡量,为后续教学设计和评估提供了明确的方向。
二、教学内容本课程教学内容紧密结合课程目标,确保科学性和系统性。
具体包括以下部分:1. C语言基础知识回顾:包括数据类型、运算符、控制语句等,涉及教材第1-3章内容。
2. 结构体与数组:讲解结构体的定义和使用,数组的应用,为教室管理系统设计提供数据结构支持,涉及教材第4章内容。
3. 函数:介绍函数的定义、调用、参数传递等,帮助学生掌握模块化编程思想,涉及教材第5章内容。
4. 文件操作:讲解文件读写、存储等基本操作,为教室管理系统提供数据持久化支持,涉及教材第6章内容。
5. 教室管理系统功能模块设计:- 教室信息添加、删除、修改、查询功能,涉及教材第7章内容;- 教室预约、取消预约功能,涉及教材第8章内容;- 用户登录、权限管理功能,涉及教材第9章内容。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
成绩评定表课程设计任务书目录第一章.需求分析 (4)第二章.总体设计 (5)第三章.详细设计图 (6)第四章.测试 (8)第五章.总结 (8)第六章.程序代码 (9)第七章.参考文献 (13)第一章.需求分析(一)研究背景:随着高等学校的快速发展,高校教师的规模越来越大,教职工的数量也越来越多,每年对高校教师的评教管理无疑是一项琐碎、复杂而又十分细致的工作。
关于工作量的计算,项目繁多,而且一般不允许出错。
在以往,教务部门对教师工作量的统计工作一直都是采取手工的方式,每年需填制大量的表格,这就会耗费工作人员大量的时间和精力。
如若采用专门的计算机管理系统,不仅能够保证工作量核算准确无误、快速输出,而且还可以利用计算机对有关工作量的各种信息进行统计,同时计算机具有手工管理所无法比拟的优点,例如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高教师工作量管理的效率,也是企业的科学化、正规化管理与世界接轨的重要条件。
使用计算机管理系统来管理高校教师工作量已成为目前的趋势,使用计算机可以高速,快捷地完成以上工作。
在计算机联网后,数据在网上传递,可以实现数据共享,避免重复劳动,规数据管理行为,从而提高管理效率和水平。
高校教师工作量管理系统便是以计算机为工具,通过对工作量管理所需的信息管理,不仅把管理人员从繁琐的数据计算处理中解脱出来,而且优化了管理体系,使其高效化,简易化、智能化,也提高了透明性和互动性。
(二)产品功能:(1)工作量信息录入:教师一个教学任务的信息为:教师编号(不重复)、姓名、授课班级系数、理论课时、实验课时、教学任务总课时。
提供录入界面供用户输入数据,并以合理数据结构,诸如:结构数组或数据文件的形式加以保存。
(2)工作量计算:以教师为单位,计算出该教师一个学年的总工作量。
计算公式如下:a. 教学任务总课时。
计算方法如下表:b. 一个学年总的教学工作量=所有单个教学任务总课时之和*职称系数。
其中:正教授系数=1.2;副教授系统=1.1;其他职称系数=1。
(3)查找:能查找一个教师年度工作量明细、查找某教师年度总作量。
(6)系统以菜单方式工作,界面应清晰直观,便于用户操作。
第二章.总体设计1.主函数main()功能:调用菜单函数;2.菜单函数main_menu()功能:提供用户选择的入口,进入其他模块进行相关处理;3.信息输入函数input_teacher_information()功能:录入需查询的教师和课程的相关信息(结构数组形式);4.查询教师工作量及报酬函数total_task ()功能:调用相关模块,对指定的信息项进行查询;第三章详细设计图流程图主函数流程图:主要菜单流程图:工作量计算流程图:职称=1.0 第四章.测试第五章.总结对于这次我设计的教师工作管理,我感觉自己花了很多的时间并投入很多努力,虽然总是一次一次出现ERROR运行不了让人感到特气馁,但我还是坚持了下来,通过同学的帮助,把错误一个一个都解决掉了,最后才得以成功。
所以我要感谢老师和帮助过我的同学,让我在我的第一次课设中坚持了下来。
通过这次程序设计,使我加深了对C语言的认识,进一步熟悉了对C语言功能的灵活运用,而且加深了我对程序的理解和编写能力,通过文献资料和网络资料的帮助,使我对C语言程序设计这一基础学科又一次加深了认识,也意识到了其具有的强大功能和发展前景。
这会对以后的学习有所帮助。
第六章程序代码#include<stdio.h>#define MAX 100typedef struct course{int theory;int experiment;int class_num;float total;}course;struct teacher{int id;char name[10];course cour[10];int num;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;default:printf("terror!\n");}clrscr();return 0;}void main_menu(){printf("\t Welcome To Teacher's Management System\n");printf("\t--------------------------------------------------\n");printf("\t* 1>Input teacher's information *\n");printf("\t* 2>Inquire about the amount of teacher's total task *\n"); printf("\t* 0>Exit *\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 teacher's information:\n",j); printf("\tplease input teacher's id:");scanf("%d",&teacher[j].id);printf("\tplease input teacher's name:\n");scanf("%s",teacher[j].name);printf("\tplease 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("terror!\n");}printf("\tplease input the number of teacher's courses:\n"); scanf("%d",&teacher[j].num);for (i=0;i<teacher[j].num;i++){printf("\tplease input the NO.%d course's information:\n",i+1);printf("\tplease input the number of theory course:\n");scanf("%d",&teacher[j].cour[i].theory);printf("\tplease input the number of experiment course:\n");scanf("%d",&teacher[j].cour[i].experiment);printf("\tplease input the number of class(>=2):");scanf("%d",&teacher[j].cour[i].class_num);if (teacher[j].cour[i].class_num<2)printf("t 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++){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("\tDO 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,teach er[N].total,teacher[N].reward);printf("\tDO you want to exit?(y\n)\n");H=getchar();if(H=='y') main_menu(); }。