教师工作量系统设计.doc_第1页
教师工作量系统设计.doc_第2页
教师工作量系统设计.doc_第3页
免费预览已结束,剩余22页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

湖南文理学院课程设计报告湖南文理学院课程设计报告 课程名称 计算机软件技术课程设计 系 部 电气与信息工程学院 专业班级 通信 09102 班 学生姓名 学生学号 200916020211 指导教师 曹玲玲 完成时间 2011 12 28 报告成绩 评阅意见 评阅教师 日期 1 目目 录录 摘摘 要要 2 2 一 设计要求一 设计要求 3 3 二 设计目的二 设计目的 3 3 三 系统功能定义三 系统功能定义 3 3 1 教师工作量统计系统的整体功能定义图 3 2 工作量计算功能模块的角色分析 4 3 教师工作量添加框图 5 四 具体设计四 具体设计 5 5 五 软件运行结果五 软件运行结果 7 7 六 语言心得体会六 语言心得体会 9 9 七 附录七 附录 1010 八 参考文献八 参考文献 2323 2 摘摘 要要 本课程设计是一个实现对教师工作量数据库库进行一定基本操作的程序设计 在本 课程设计中 程序设计设计语言采用 C 语言 运用数组 指针 函数结构体和各种变量 编写程序 程序通过调试运行 基本实现开发目标中管理员查找 修改 添加 删除等 功能 经过部分完善后 可以应用在实际教师工作量管理中 关键词 关键词 教师工作量 管理系统 C 语言 3 教师工作量计算设计报告教师工作量计算设计报告 一 设计要求一 设计要求 设计一个教师工作量计算系统计算每个老师在一个学期中所教课程的总工作量 应 该具有以下功能 1 输入功能 建立教师工作量信息记录 可以一次完成无数条记录的输入 输入信息 包括教师号 姓名 性别 课程 班级数目 课时 2 显示功能 完成全部记录的显示 3 查找功能 按教师号 姓名查找记录 并显示 4 排序功能 按教师号进行排序 并保存 5 读取功能 将保存在文件中的记录读取出来 并在屏幕上显示 二 设计目的二 设计目的 通过进行计算机设计实践 更加系统地理解和掌握 C C 语言的基本概念 语言特 点和编程技巧 增强实践动手能力 锻炼和培养自学能力 独立思考能力 运用所学知 识 在模块化程序设计 结构化程序设计 思想或面向对象程序设计思想指导下 利用 C 系 统提供的标准函数 自定义函数或 C 标准类 自定义类进行程序设计 培养利用 C C 语言设计综合程序的能力 了解软件设计的大概过程 分析题目 概要设计 详细 设计 编码调试 测试 同时使机操作更加熟练 4 三 系统功能定义三 系统功能定义 1 1 教师工作量统计系统的整体功能定义图 教师工作量统计系统的整体功能定义图 管理员 显示菜单 选择功能 结束 1230 进行教师工作 量排序 退出输入教师工作 量信息 显示教师工作量情 况 图 1 教师工作量统计系统的整体功能定义图 2 2 工作量计算功能模块的角色分析 工作量计算功能模块的角色分析 教师工作量计算系统中有两个角色 管理员 教师 两个角色的相互作用就构成了 系统功能的主要部分 下面我们首先对各个角色的操作进行分析 在此基础上确定系统需求 管理员 操作角色 系统管理人员 主要功能 教学计划管理与查询 实现教师工作量信息统计总结填报环境的自动化 5 控制 使教师工作信息统计填报环境得到很大的改善 对申报的教学计划的审核 教学计划归档 对申报的教师个人工作量的审核 教师个人工作量管理和监控 跟踪与统计汇总 实现教师工作量信息统计的自动 化管理 教师个人工作量管理和监控 跟踪与统计汇总 实现教师工作量信息统 计的自动化管理 工作量计算 包括教师姓名 授课工作量 实验工作量 课程设计工作量 毕业 设计工作量 总工作量 排序位置 教师信息结构体 3 3 教师工作量添加框图 教师工作量添加框图 教师个人工作量总表 添加教师个人工作量 教 师 编 号 教 师 姓 名 工 作 量 排 名 工 作 总 量 四 具体设计四 具体设计 先定义基本元素 char name 10 教师姓名 int lesson 授课工作量 6 int exper 实验工作量 int cdesign 课程设计工作量 int gdesign 毕业设计工作量 int total 总工作量 int pos 排序位置 编译教师工作量管理图 system cls 清屏函数 printf 您好 欢迎进入教师工作量统计系统 n printf n printf 1 输入教师工作量信息 n n 2 进行教师工作量排序 n n 3 显示教师工作量情况 n n 0 退出 n n printf n 设计基本的功能键 system cls 清屏函数 printf 您好 欢迎进入教师工作量统计系统 n printf 7 n printf 1 输入教师工作量信息 n n 2 进行教师工作量排序 n n 3 显示教师工作量情况 n n 0 退出 n n printf n printf 请在 0 3 中选择以回车键结束 n n scanf d switch j case 1 L input L prin 五 软件运行结果五 软件运行结果 程序用 visual c 编译 8 在 visual c 编译并运行得到程序运行结果如下图所示 再按 1 键得到一窗口 如下图所示 9 按要求输入 2 得到输入教师姓名 由以上结果课得出程序运行正确 可实现通讯录的查询功能 六 语言心得体会六 语言心得体会 10 通过这次实训 增加了我学习软件技术的兴趣 虽然还不明确软件技术包含的具体 内容 但从 C 语言这门课程开始 已发现程序设计的乐趣 在学习 C 语言的过程中也学 到了许多计算机应用基础知识 对计算机的机体也有了一个大体的了解 这次实训是老师给了范例程序 经过自己的改写 实现要求 先做简单的输出 一 步步的再做其它图案 在实际操作过程中犯的一些错误还会有意外的收获 感觉实训很 有意思 在具体操作中对这学期所学的 C 语言的理论知识得到巩固 达到实训的基本目 的 也发现自己的不足之出 在以后的上机中应更加注意 同时体会到 C 语言具有的语 句简洁 使用灵活 执行效率高等特点 发现上机实训的重要作用 特别是对数组和循 环有了深刻的理解 通过实际操作 学会 C 语言程序编程的基本步骤 基本方法 开发了自己的逻辑思 维能力 培养了分析问题 解决问题的能力 深刻体会到 没有做不到的 只有想不到 的 团结就是力量 实践是检验真理的标准 不耻下问 的寓意 计时在此希望以后应多进行这样的实训 加长设间 培养学生独立思考问题的能力 提 高实际操作水平 七 附录七 附录 源程序源程序 include 标准输入 输出头文件 include 包含字符串函数处理头文件 include 包含动态存储与释放函数头文件 include system define TEALEN sizeof teanode 教师信息结构体长度 define LEN sizeof Lnode 链表节点长度 define MAX 10 int SAME MAX typedef struct teanode char name 10 教师姓名 11 int lesson 授课工作量 int exper 实验工作量 int cdesign 课程设计工作量 int gdesign 毕业设计工作量 int total 总工作量 int pos 排序位置 teanode linknode 教师信息结构体 typedef struct Lnode char no 20 教师编号 linknode info 节点信息详细指针指向教师信息结构体 struct Lnode prior next 双向链表指针域 Lnode linklist 链表节点 void newLnode void initlist void prin void initlist linklist T T linklist malloc LEN T info linknode malloc TEALEN 为头结点申请空间 T prior T 设置头结点的前驱指针 T next T 设置头结点的后继指针 初始化双向循环链表 void newLnode linklist p p linklist malloc LEN 新节点 12 if p printf 申请节点失败 exit 0 p info linknode malloc TEALEN void prin linklist L if L NULL printf 没有可以显示的信息 n return linklist p L next printf n printf 教师编号 教师姓名 工作量排名 工作总量 n n while p L printf 7s 9s 10d 10d n p no p info name p info pos p info total p p next 13 void main linklist input linklist L linklist sort linklist L int j 用来判断是否结束 linklist L initlist do system cls 清屏函数 printf 您好 欢迎进入教师工作量统计系统 n printf n printf 1 输入教师工作量信息 n n 2 进行教师工作量排序 n n 3 显示教师工作量情况 n n 0 退出 n n printf n printf 请在 0 3 中选择以回车键结束 n n scanf d switch j case 1 14 L input L prin printf 录入结束 n system pause break case 2 L sort L printf 排序成功 n system pause break case 3 prin system pause break case 0 break while j 0 printf 谢谢使用 再见 n 主函数结束 linklist input linklist L linklist workload linklist p linklist adworkload linklist p linklist searinsert linklist L linklist p linklist sort linklist L int flag 0 char no 10 15 linklist p p L next for if flag 1 break printf 请输入教师编号输入 结束 n n scanf s no if no 0 flag 1 break while p L 当链表不空时 if strcmp p no no 0 printf 该教师编号已存在 输入需要增加的工作量 n n p prior next p next p next prior p prior 删除 P p adworkload p 修改 P 中的详细信息 info 指针域的内容 L searinsert L p 重新查找 P 的位置插入链表 L 中 return L p p next 跳出循环则该教师编号第一次输入 newLnode 16 strcpy p no no printf 请输入教师姓名 n scanf s p info name p workload p L searinsert L p return L linklist adworkload linklist p int a printf 请输入增加的授课工作量 n scanf d p info lesson a printf 请输入增加的实验工作量 n scanf d p info exper a printf 请输入增加的课程设计工作量 n scanf d p info cdesign a printf 请输入增加的毕业设计工作量 n scanf d p info gdesign a p info pos 0 p info total p info lesson p info exper p info cdesign p info 17 gdesign 求总工作量 return p linklist workload linklist p printf 请输入该教师的授课工作量 n scanf d printf 请输入该教师的实验工作量 n scanf d printf 请输入该教师的课程设计工作量 n scanf d printf 请输入该教师的毕业设计工作量 n scanf d p info pos 0 p info total p info lesson p info exper p info cdesign p info gdesign 求总工作量 return p linklist searinsert linklist L linklist p 将 P 放置 L 中合适的位置 linklist tra 遍历指针 linklist x P 插入位置的前一个节点指针 18 tra L next 指向第一个节点 if L next L p info total tra info total 第一次插入或者 大于表头的情况 x L 插入表头 else if p info totalprior info total 小于表尾的情况 x L prior 插入表尾 else while p info totalinfo total tra tra next x tra prior 正常查找情况 将 P 接到 X 后面 p next x next p prior x x next p p next prior p return L linklist sort linklist L linklist sortfisrtlast linklist L linklist first linklist last int n int i for i 0 inext while p L x 1 while p next info total p info total p p next n if p L return L else while p next info total p info total if x 1 k n first p p info pos k x p p next 20 p info pos k 保存 X SAME k x n x 1 if p L return L else last p p last next L sortfisrtlast L first last k 调用 fisrt last 函数 linklist sortfisrtlast linklist L linklist first linklist last int n if first last return L linklist head posa posb p t linklist tra 遍历指针 linklist x P 插入位置的前一个节点指针 posa first prior 接入位置 a posb last next 接入位置 b posa next last next last next prior posa last next NULL first prior NULL 删除这段 initlist p first 21

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论