《计算机应用实践报告课程设计报告职工信息管理系统.doc》由会员分享,可在线阅读,更多相关《计算机应用实践报告课程设计报告职工信息管理系统.doc(21页珍藏版)》请在金锄头文库上搜索。
1、数学与计算机学院 课程设计说明书 课 程 名 称 计算机科学与技术程序设计语言 课程设计 课 程 代 码 题 目 职工信息管理系统 年级 专业 班 学 生 姓 名 学 号 开 始 时 间 年 月 日 完 成 时 间 年 月 日 课程设计成绩 学习态度及平 时成绩 30 技术水平与实际 能力 20 创新 5 说明书撰写质量 45 总 分 100 指导教师签名 年 月 日 职工信息管理系统 目 录 1 1 引引 言言 1 1 1 1 问题的提出 1 1 2 国内外研究的现状 1 1 3 任务与分析 1 2 2 程序的主要功能程序的主要功能 2 2 2 1 添加功能 2 2 2 删除功能 2 2 3
2、 按年龄排序全部职工信息 2 2 4 显示功能 2 2 5 按姓名查找功能 2 2 6 按学历查找功能 2 3 3 程序运行平台程序运行平台 3 3 4 4 总体设计总体设计 4 4 5 5 模块分析模块分析 5 5 5 1 添加模块 5 5 2 显示模块 5 5 3 按姓名查找模块 5 5 4 按学历查找模块 5 5 5 删除模块 5 5 6 按年龄排序全部职工信息 5 6 6 系统测试系统测试 6 6 7 7 结论结论 7 7 致致 谢谢 8 8 参考文献参考文献 9 9 职工信息管理系统 摘摘 要要 随着计算机的普及 小型系统的编写有了很快的发展 本系统分析了任务书 中的要求 利用 C
3、语言编程实现了职工信息管理系统 该系统具有人员信息的添 加 删除 查找 修改和显示功能 关键词 关键词 职工信息管理系统 计算机 添加 删除 查找 修改 1 职工信息管理系统 1 引引 言言 1 1 问题的提出问题的提出 在现代化的企业管理中 人事管理系统有着十分重要的作用 然而 用大型软件 系统来于小型的企事业单位 不啻于 杀鸡用牛刀 因此小型的的软件对于这种单位 自然有十分重要作用 小型企业出与这种目的制作了这个人事管理系统 1 2 国内外研究的现状国内外研究的现状 现今国内外大多注意在大型人事管理系统的开发 在小型人事管理系统却少有开现今国内外大多注意在大型人事管理系统的开发 在小型人事
4、管理系统却少有开 发 但并非所有的公司都实用与大型系统 所以小型系统有开发的必要 发 但并非所有的公司都实用与大型系统 所以小型系统有开发的必要 1 3 任务与分析任务与分析 本课题主要的目的是编程实现职工信息管理系统 系统以菜单方式工作 1 职工信息 包括姓名 编号 性别 年龄 学历 职称 工种等 浏览功能 输出 2 职工信息删除 修改功能 任选项 3 职工信息录入功能 职工信息用文件保存 输入 4 查询和排序功能 至少一种查询方式 按姓名查询和按学历查询等 要求职 工信息存入文件 2 职工信息管理系统 2 程序的主要功能 2 1 添加功能添加功能 添加一个职工的基本信息 包括姓名 编号 性
5、别 年龄 学历 职称 工种 2 2 删除功能删除功能 能够对一个职工的信息进行删除 按姓名进行删除 2 3 排序功能排序功能 能够对于全部职员的信息进行年龄排序 2 4 显示功能显示功能 显示所有职工的信息包括姓名 编号 性别 年龄 学历 职称 工种 2 5 按姓名查询功能按姓名查询功能 根据你键入的职工姓名 显示其详细信息 2 6 按学历查询功能按学历查询功能 根据你键入的职工学历 显示其详细信息 3 职工信息管理系统 3 程序运行平台 VC 6 0 具体操作如下 新建 C 语言源程序工程 添加相应的源文件至此源程序 再编译 发现是否有错误 有则改之 无则链接成可执行文件 执行次可执行文件
6、4 职工信息管理系统 4 总体设计 图 4 1 系统总体框架图 主 函 数 添 加 信 息 删 除 信 息 排 序 信 息 姓 名 查 询 显 示 信 息 学 历 查 询 5 职工信息管理系统 5 模块分析 5 15 1 添加模块添加模块 系统将提示用户输入新添加的职员的信息 插入在文件中 void input 信息录入函数 FILE fp 定义文件 worker xs if fp fopen worker txt ab NULL printf can t open file n exit 0 打开文件 如果不能打开 就关 闭所有文件 printf n 录入格式 姓名 编号 性别 年龄 学历
7、职称 工种 当输入姓名为 end 结束录入 n while 1 scanf s xs name if strcmp xs name end 0 break 如果输入的是 end 则停止输入 scanf d s d s s s fwrite 将信息写入文件 fclose fp 关闭文件 5 25 2 显示模块显示模块 显示模块将输出所有职员的主要资料 6 职工信息管理系统 void print 职工信息浏览函数 FILE fp worker s 定义结构体变量 system cls 清屏 if fp fopen worker txt rb NULL printf can t open file
8、n exit 0 printf n 10s 5s 2s 2s 5s 5s 5s n 姓名 编号 性别 年龄 学历 职称 工种 while feof fp fread 从文件中读取职工信息 if feof fp break 判断是否文件尾 printf 10s 5d 5s 5d 5s 5s 5s n s name s bianhao s sex s nianling s xueli s zhicheng s gongzhong fclose fp 关闭文件 getch 停止运行 便于观察结果 5 35 3 按学历查找模块按学历查找模块 首先由用户输入要修改的职员的学历 然后系统用查找函数查找 然
9、后系统就调 用输出函数 输出所查找的职员资料 void seekxueli 学历查找函数 7 职工信息管理系统 worker xs N 定义一个结构体一维数组 FILE fp char xueli 10 int i k system cls printf n 请输入要查找的学历 scanf s xueli i 0 if fp fopen worker txt r NULL 为输入打开一个已存在的文本文件 printf can t open file n exit 0 while feof fp fread 从文件中读取职工信息 if feof fp break 判断是否文件尾 if strcm
10、p xs i xueli xueli 0 如果数组中有和输入相同的学历 则找到 它在数组中的位置 并输出 k i printf n 10s 5s 2s 2s 5s 5s 5s n 姓名 编号 性别 年龄 学历 职称 工种 printf 10s 5d 5s 5d 5s 5s 5s n xs k name xs k bianhao xs k sex xs k nianling xs k xueli xs k zhicheng xs k gongzhong 8 职工信息管理系统 getch 5 45 4 按姓名查找模块按姓名查找模块 首先由用户输入要查找的职员姓名 然后系统用查找函数查找 然后系统就
11、调用 输出函数 输出所查找的职员资料 void seekname 姓名查找函数 worker xs N 定义一个结构体一维数组 FILE fp char name 10 int i k system cls printf n 请输入要查找的职工姓名 scanf s name i 0 if fp fopen worker txt r NULL 为输入打开一个已存在的文本文 件 printf can t open file n exit 0 while feof fp fread 从文件中读取职工信息 if feof fp break 判断是否文件尾 if strcmp xs i name nam
12、e 0 k i 如果数组中有和输入相同的名字 则 找到它在数组中的位置 printf n 10s 5s 2s 2s 5s 5s 5s n 姓名 编号 性别 年龄 学历 职称 工种 9 职工信息管理系统 printf 10s 5d 5s 5d 5s 5s 5s n xs k name xs k bianhao xs k sex xs k nianling xs k xueli xs k zhicheng xs k gongzhong getch 停止运行 便于观察结果 5 55 5 删除模块删除模块 首先由用户输入要删除的单个职员姓名 然后调用删除函数 删除该名职员的资 料 并输出余下的职工信息
13、 void dele 删除函数 worker xs N 定义一个结构体一维数组 FILE fp 定义文件 char name 10 int i j k 0 system cls printf n 请输入要删除的职工姓名 scanf s name i 0 if fp fopen worker txt a NULL 为读写打开一个文本文件 printf can t open file n exit 0 while feof fp fread 从文件中读取职工信息 if feof fp break if strcmp xs i name name 0 k i 如果数组中有和输入相同的名字 则准备执行
14、删除 i 10 职工信息管理系统 fclose fp 关闭文件 以下是删除后职工信息 j i if k 0 if fp fopen worker txt w NULL 为读写建立一个新的文本文件 printf can t open file n exit 0 for i 0 i j i if i k continue 执行删除功能 fwrite fclose fp 关闭文件 else printf 删除失败 n print 嵌套调用职工信息浏览函数 5 65 6 排序模块排序模块 系统将会把所有职员的资料全部按年龄排序并输出 void paixu 排序函数 worker xs N 定义一个结构
15、体一维数组 worker x FILE fp int i k j 11 职工信息管理系统 system cls i 0 if fp fopen worker txt a NULL 为读写打开一个文本文件 printf can t open file n exit 0 while feof fp fread 从文件中读取职工信息 if feof fp break i fclose fp k i for i 0 i k 1 i for j 0 jxs j 1 nianling x xs j xs j xs j 1 xs j 1 x 冒泡法排序 printf n 10s 5s 2s 2s 5s 5s
16、 5s n 姓名 编号 性别 年龄 学历 职称 工种 for i 0 i k 1 i printf 10s 5d 5s 5d 5s 5s 5s n xs i name xs i bianhao xs i sex xs i nianling xs i xueli xs i zhicheng xs i gongzhong getch 停止运行 便于观察结果 12 职工信息管理系统 6 系统测试 首先进入 VC 6 0 打开工程 person dsw 然后进入源程序 接着选择 Build 下 的 Execute person exe 即可 也可以不打开工程 直接双击 person 文件夹下的 debug 或 release 子文件夹下的 person exe 文件即可运行程序 13 职工信息管理系统 6 16 1 职工信息录入职工信息录入 6 26 2 职工信息浏览职工信息浏览 6 36 3 职工信息删除 职工信息删除 删除前信息 删除人 删除后信息 6 46 4 按姓名查询按姓名查询 当输入为林雨时 14 职工信息管理系统 6 56 5 按学历查询按学历查询 6 66 6 按年龄从小到大排