




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程设计报告课程设计报告 本科 本科 课程 高级语言程序设计 1110441062 学号 1110441039 陈飞 姓名 汪家东 班级 2011 级计算机科学与技术 嵌入式应用技术 班 教师 冯凤 时间 2011 12 16 2012 1 6 计算机科学与技术系 1 设计名称 职工信息管理系统设计 设计内容 目的与要求 内容 职工信息包括职工号 姓名 性别 年龄 学历 工资 住址 电话等 职 工号不重复 目的与要求 设计一职工信息管理系统 使之能提供以下功能 1 职工信息录入功能 职工信息用文件保存 输入 2 职工信息浏览功能 输出 3 职工信息查询功能 算法 查询方式 按学历查询 按职工号查询 条件组合查询职工信息删除 修改功能 计划与进度安排 12 月 16 日 12 月 17 日 陈飞 汪家东 设计算法 画出流程图 12 月 18 日 12 月 20 日 陈飞 编写菜单函数 浏览函数 查询函数 保存函数 12 月 18 日 12 月 20 日 汪家东 编写信息录入函数 信息修改 删除函数 信息增加函数 12 月 21 日 12 月 25 日 陈飞 完成设计思路并作出草稿 完成程序的输入 12 月 26 日 12 月 30 日 汪家东 完成对基本功能的编译 链接 修改并运行无误 增加对开始的源程序的功能 12 月 31 日 1 月 2 日 陈飞 汪家东 寻找程序的缺点并改进 对程序进一不进行优化 1 月 3 日 1 月 6 日 陈飞 汪家东 对程序进行进一步修改并完成 提交设计任务 2 设计过程 步骤 可加页 1 此程序要用到结构体 Struct employee int num char name 10 char sex int age char xueli 30 int wage char addr 30 char tel 12 2 函数的声明和调用 void menu 声明菜单函数 void input 声明信息录入函数 void save int 声明信息保存函数 void display 声明信息浏览函数 void del 声明信息删除函数 void add 声明信息增加函数 void search 声明查询函数 void search num void search xueli void search tel void modify 声明信息修改函数 3 在录入函数中使用for循环语句 if else语句 printf 请输入需要创建信息的职工人数 1 100 n scanf d for i 0 i m i printf 职工号 号码范围 2012001 2012100 scanf d for n 1 n 1 for p 0 p i p if em i num em p num j 1 if j 1 j 0 printf n 您输入的职工号重复 请重新输入 n printf 职工号 scanf d 3 else n 0 printf n printf 请输入姓名 scanf s em i name getchar printf 请输入性别 f 女 m 男 scanf c printf 请输入年龄 scanf d printf 请输入学历 scanf s em i xueli printf 请输入工资 scanf d printf 请输入住址 scanf s em i addr printf 请输入电话 scanf s em i tel printf n printf n printf n 创建完毕 n 4 在菜单函数 修改函数 信息增加函数和查询函数中使用 switch 语句和 while 语句 1 菜单函数 while flag 0 while flag 1 switch n case 1 printf 输入职工信息 n printf n input break case 2 printf 浏览职工信息 n printf n display break case 3 printf 按职工号查询职工信息 n printf n search break case 4 printf 删除职工信息 n printf n del break case 5 printf 添加职工信息 n printf n add break case 6 printf 修改职工信息 n printf n modify break case 7 exit 0 break 4 default break 2 修改函数 switch t case 1 del break case 0 break default break 3 查询函数 while flag 0 while flag 1 switch t case 1 printf 按职工号查询 n search num break case 2 printf 按学历查询 n search xueli break case 3 printf 按电话号码查询 n search tel break case 4 main break default break 5 在信息保存函数中使用文件保存 打开与关闭函数 FILE fp if fp fopen employee list wb NULL 创建文件并判断是否 能打开 printf cannot open file n exit 0 for i 0 i m i 将内存中职工的信息输出到磁盘文件中去 if fwrite fclose fp 6 该职工信息查询系统可实现职工信息录入功能 职工信息包括职工号 姓名 性别 年龄 学历 工资 住址 电话等 职工信息浏览功能 职工信息查询 功能 按学历查询 按职工号查询 条件组合查询 职工信息修改功能 职工 信息删除功能 5 7 组织结构简图 职工信息 管理系统 信息 录入 信息 浏览 信息 查询 信息 删除 信息 添加 信息 修改 按职工 号查询 按学历查 询 条件组合 查询 电 话 添加一条 或多条信 息 修改一条 或多条信 息 输入职工 信息 6 结果与分析 可以加页 1 菜单函数使用界面 提示用户按键选择 2 浏览职工信息界面 可使用户更清晰的浏览职工信息 7 3 职工信息查询 可按职工号 学历以及条件组合查询 4 职工信息删除 先输入职工姓名 然后选则按提示删除项目 8 5 职工信息添加 根据提示选择添加项目 6 职工信息修改 9 设计体会与建议 三周的课程设计已经结束了 回想学习 C 语言 的过程中 既有快乐又有烦恼 从领到书的那一刻 我就很郁闷 C 语言程序设计 到底事学什么的 有什 么用 刚开始上课时 还在迷茫这门课程是用来做什么的 不过 这些感受都 是在对这门课程不了解的情况下产生的 后来慢慢的接触多了 听老师讲的多 了 了解多了 渐渐的产生了兴趣 尤其是学到语句和函数时 上机操作程序 经过编译 调试和运行后 出现界面 当时觉得很好奇 想真正的学好这门课 程 通过半个学期的学习 我掌握了基本知识 第一周结束的时候 我感觉自 己收获挺大的 从一开始的迷茫 不知道从何下手到把程序中的几个模块编写 出来 心里挺开心的 但是 到了第二周 我们由不得不再次陷入困境 在整 个程序的编写过程中 最难的就是修改和删除这两个模块 这也是我们第二周 要解决的重点问题 开始编写修改和删除时 很头疼 去向其他人寻求帮助 在别人的帮助和提示 下 我编完了修改程序 但编译时老出错 修改后的内容将文本内的信息全部 覆盖了 这样的话 整个程序基本上全部完成了 就剩下完善工作了 序 最 后 我和汪家东两个人的程序相互组合 互补 大功告成 短短的三周课程序设计结束了 但是这段时间里 我又学到了更多 C 知识 如 对象数组 string 类 文件流等 同时我也被提醒以后办事的时候要认真 仔细 考虑周全 陈 飞 2012 年 1 月 6 日 我的题目是职工信息管理系统的设计 对于我们这些新手来说 这是很大的考 验 我一千次一万次的问自己 怎么才能找到课堂所学与实际应用的最佳结合 点 怎么才能让自己的程序在篇幅上简单 在使用价值上丰富 经过自己的琢 磨 听取了师兄们的建议 还查阅了很多书籍 才做到了心中有数 才了解了 C 语言课程设计的真正用意 培养自学能力 养成程序编辑的好习惯 我从 来不相信车到山前必有路的说法 认为那只是懒惰者自寻懒惰的借口 我要积 极 要把握 要努力 回顾起此次课程设计 至今我仍感慨颇多 的确 从从 拿到题目到完成整个编程 从理论到实践 在整整三个星期的日子里 我学到 了很多很多的的东西 同时不仅可以巩固了以前所学过的知识 而且学到了很 多在书本上所没有学到过的知识 通过这次课程设计使我懂得了理论与实际相 结合是很重要的 只有理论知识是远远不够的 只有把所学的理论知识与实践 相结合起来 从而提高自己的实际动手能力和独立思考的能力 在设计的过程 中遇到问题 可以说得是困难重重 这毕竟第一次做的 难免会遇到过各种各 样的问题 同时在设计的过程中发现了自己的不足之处 对以前所学过的知识 理解得不够深刻 掌握得不够牢固 比如说结构体 通过这次课程设计之后 一定把以前所学过的知识重新温故 汪家东 2012 年 1 月 6 日 10 附录 程序源代码 include include include include define N 100 struct employee int num char name 10 char sex int age char xueli 30 int wage char addr 30 char tel 12 em 100 定义一个结构体 void menu 声明菜单函数 void input 声明信息录入函数 void save int 声明信息保存函数 void display 声明信息浏览函数 void del 声明信息删除函数 void add 声明信息增加函数 void search 声明查询函数 void search num void search xueli void search tel void modify 声明信息修改函数 void menu 菜单函数 printf 计算机科学与技术学系 n printf n printf 2011 级嵌入式应用技术班 汪家东 陈 飞 n printf n printf 职工信息管理 n printf 1 录入职工信息 n printf 2 浏览职工信息 n 11 printf 3 查询职工信息 n printf 4 删除职工信息 n printf 5 添加职工信息 n printf 6 修改职工信息 n printf 7 退出 n printf 谢谢使用 n printf n printf n void main int n flag char a menu 调用菜单函数 do printf 请选择你需要操作的步骤 1 7 n scanf d if n 1 break else flag 0 printf 您输入有误 请重新选择 while flag 0 while flag 1 switch n case 1 printf 输入职工信息 n printf n input break case 2 printf 浏览职工信息 n printf n display break case 3 printf 按职工号查询职工信息 n printf n search break case 4 printf 删除职工信息 n printf n del break case 5 printf 添加职工信息 n printf n add break 12 case 6 printf 修改职工信息 n printf n modify break case 7 exit 0 break default break getchar printf n printf 是否继续进行 y or n n scanf c if a y flag 1 system cls 清屏 menu 调用菜单函数 printf 请再次选择你需要操作的步骤 1 6 n scanf d printf n else exit 0 void input 录入函数 int i n m p j printf 请输入需要创建信息的职工人数 1 100 n scanf d for i 0 i m i printf 职工号 号码范围 2012001 2012100 scanf d for n 1 n 1 for p 0 p i p if em i num em p num j 1 if j 1 j 0 printf n 您输入的职工号重复 请重新输入 n 13 printf 职工号 scanf d else n 0 printf n printf 请输入姓名 scanf s em i name getchar printf 请输入性别 f 女 m 男 scanf c printf 请输入年龄 scanf d printf 请输入学历 scanf s em i xueli printf 请输入工资 scanf d printf 请输入住址 scanf s em i addr printf 请输入电话 scanf s em i tel printf n printf n printf n 创建完毕 n save m void save int m 保存文件函数 int i FILE fp if fp fopen employee list wb NULL 创建文件并判断是否能打开 printf cannot open file n exit 0 for i 0 i m i 将内存中职工的信息输出到磁盘文件中去 if fwrite 14 fclose fp int load 导入函数 FILE fp int i 0 if fp fopen employee list rb NULL printf cannot open file n exit 0 else do fread i while feof fp 0 fclose fp return i 1 void display 浏览函数 int i int m load printf n 职工号 t 姓名 t 性别 t 年龄 t 学历 t 工资 t 住址 t 电话 n for i 0 i m i m 为输入部分的职工人数 printf n d t s t c t d t s t d t s t s n em i num em i name em i sex em i age em i xueli em i wage em i addr em i tel void del 删除函数 15 int m load int i j n t flag char name 20 printf n 原来的职工信息 n display 调用浏览函数 printf n printf 请输入要删除的职工的姓名 n scanf s name for flag 1 i 0 flagi if strcmp em i name name 0 printf n 已找到此人 原始记录为 n printf n 职工号 t 姓名 t 性别 t 年龄 t 学历 t 工资 t 住址 t 电话 n printf n d t s t c t d t s t d t s t s n em i num em i name em i sex em i age em i x ueli em i wage em i addr em i tel printf n 确实要删除此人信息请按 1 不删除请按 0 n scanf d if n 1 如果删除 则其他的信息都往上移一行 for j i j m 1 j strcpy em j name em j 1 name em j num em j 1 num em j sex em j 1 sex em j age em j 1 age strcpy em j xueli em j 1 xueli em j wage em j 1 wage strcpy em j addr em j 1 addr strcpy em j tel em j 1 tel flag 0 if flag m m 1 else printf n 对不起 查无此人 n printf n 浏览删除后的所有职工信息 n save m 调用保存函数 display 调用浏览函数 printf n 继续删除请按 1 不再删除请按 0 n 16 scanf d switch t case 1 del break case 0 break default break void add 添加函数 FILE fp int n int count 0 int i k p j int m load printf n 原来的职工信息 n display 调用浏览函数 printf n fp fopen emploee list a printf 请输入想增加的职工数 n scanf d for i m i m n i printf n 请输入新增加职工的信息 n printf 请输入职工号 scanf d for k 1 k 1 for p 0 p 1 break else flag 0 18 printf 您输入有误 请重新选择 while flag 0 while flag 1 switch t case 1 printf 按职工号查询 n search num break case 2 printf 按学历查询 n search xueli break case 3 printf 按电话号码查询 n search tel break case 4 main break default break void search num int num int i t g 0 int m load printf 请输入要查找的职工号 2012001 2012100 n scanf d for i 0 i m i if num em i num g printf n 已找到此人 其记录为 n printf n 职工号 t 姓名 t 性别 t 年龄 t 学历 t 工资 t 住址 t 电话 n printf n d t s t c t d t s t d t s t s n em i num em i name em i sex em i age em i x ueli em i wage em i addr em i tel if g 0 printf n 对不起 查无此人 n printf n printf 返回查询函数请按 1 继续查询职工号请按其他键 2 9 n scanf d switch t case 1 search break 19 case 2 break default break void search xueli char xueli 30 int i t g 0 int m load printf 请输入要查找的学历 n scanf s xueli for i 0 i m i if strcmp em i xueli xueli 0 g printf n 已找到 其记录为 n printf n 职工号 t 姓名 t 性别 t 年龄 t 学历 t 工资 t 住址 t 电话 n printf n d t s t c t d t s t d t s t s n em i num em i name em i sex em i age em i x ueli em i wage em i addr em i tel if g 0 printf n 对不起 查无此人 n printf n printf 返回查询函数请按 1 继续查询学历请按其他键 2 9 n scanf d switch t case 1 search break case 2 break default break void search tel char tel 12 20 int i t g 0 int m load printf 请输入要查找的电话号码 n scanf s tel for i 0 i m i if strcmp em i tel tel 0 g printf n 已找到此人 其记录为 n printf n 职工号 t 姓名 t 性别 t 年龄 t 学历 t 工资 t 住址 t 电话 n printf n d t s t c t d t s t d t s t s n em i num em i name em i sex em i age em i x ueli em i wage em i addr em i tel if g 0 printf n 对不起 查无此人 n printf n printf 返回查询函数请按 1 继续查询电话号码请按其他键 2 9 n scanf d switch t case 1 search break case 2 break default break void modify 修改
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2030年中国UV-CTP版材行业市场深度研究及发展趋势预测报告
- 解析卷-人教版8年级数学上册《全等三角形》专题训练试题(解析版)
- 解析卷-重庆市彭水一中7年级数学下册第四章三角形定向攻克试题(含解析)
- 2025年企业信用担保服务合同样本
- 2025年度食堂员工培训与职业发展服务协议
- 2025版安防设备采购、安装与监控体系合同
- 2025年肉禽养殖废弃物资源化利用合同范本
- 2025版三人共同开发新能源技术的合伙协议书
- 2025房地产经纪行业数字化转型与智慧服务合同
- 2025年度酒店餐饮市场推广活动资金引进居间服务合同
- 部编版小学语文四年级上册课程纲要
- 幼儿园红色故事绘本:《闪闪的红星》 课件
- GB/T 31997-2015风力发电场项目建设工程验收规程
- HG20615-RF法兰标准尺寸
- 三尖瓣下移畸形(Ebstein畸形)
- 新湘科版科学五年级上册全册课件(精品PPT)
- 计算机组装与维护完整版课件(全)
- 中国传媒大学-电视播音员主持人形象设计与造型(第2版)-课件
- 一键自动生成spccpkMSAPPK数据工具
- (知识扩展)城市轨道交通CBTC系统功能课件
- 中海油一级供应商
评论
0/150
提交评论