- 1、本文档共26页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言程序设计-职工信息管理系统设计(链表)汇
信息与电子工程学院
C语言课程设计
职工信息管理系统设计
实验日期和时间: 2011年06月27日-06月29日
实验类别:课程设计
实验类型:设计性
实验环境
操作系统:windows xp
编程工具:Microsoft Visual C++ 6.0
开发环境:CPU(Inter(R)Core(TM)2 Quad cpu QB200 @ 2.33GHz) 内存:2.76GB
硬盘:228.3GB
开发地点:现代教育中心201机房A17座
IP:10.250.11.17
二、实验目的和要求
实验目的:
(1)使学生进一步理解和掌握课堂上所学各种基本抽象数据类型的逻辑结构、存储结构和操作算法。使学生进一步掌握程序编写。使学生软件的基本内容。2、模块设计
该程序主要分为7个模块,分别是创建与添加模块、显示模块、查找模块、修改模块、删除模块、存档模块、文件统计模块、退出模块
(2)程序组成及各模块/函数功能;
创建与添加模块:该模块的功能是输入职工信息。函数为void Add(Node *woker)
原理:采用尾插法,先建立链表与头结点,新增一个结点,键盘输入职工号、职工姓名、职工性别、职工出生年月、职工学历、职工职位、职工工资,将这些信息存储到新增结点中,将新增加的节点连到链表的尾端,如此以往,将尾结点的指针域置空,这样就得到了一条存储职工信息的链表,这样就完成了职工信息的创建与增加。
显示模块:该模块功能是显示职工信息。函数为void Disp(Node *woker)
原理:先新建一个指针P指向头结点,判断它的指针域是否为空,若为空,则输出“没有记录可以显示”;若不为空,则输出它的指针域所指向节点所储存的职工信息,并将该指针向后移一个结点,直到P指向空,即输出了所有职工的信息,这样就完成了所有职工信息的显示。
查找模块:该模块功能是查找职工信息。函数为void Tongji(Node *woker)
原理:该模块分为两种查找方法,分别是按职工号查找和按职工姓名查找,因为这两种查找方法雷同,所以这里将只解释按职工号查找的原理。先键盘输入一个要查找的职工号并新建一个指针P指向头结点,判断它的指针域是否为空,若为空,则输出“没有资料可以统计分类”,若不为空,则判断它的指针域所指向节点所储存的职工信息中的职工号,若相等,则输出这个职工的其他所有信息,并将P指向下一个结点,再次进行判断,直到P指向空,即输出了所有查找到的信息。若不相等,则P指向下一个结点,再次进行判断,直到P指向空,即输出了所有查找到的信息,这样就完成了职工信息的查找。
修改模块 :该模块功能是修改职工信息。函数为void change(Node *woker)
原理:根据查找原理,查找到要修改信息的职工,删除这一节点,并新建一个节点,键盘输入想要修改的内容,并储存到新的结点中,将新的节点连接到链表中原先删除结点的位子,这样就完成了职工信息的修改。
删除模块:该模块功能是删除管理职工信息。函数为void dismiss(Node *woker)
根据查找的原理,查找到要修改信息的职工,删除这一节点,并将其前驱结点的指针域指向其后继结点,这样就完成了职工信息的删除。
存档模块:将内存中的信息存储到文件中。函数为void save(Node *woker)
原理:打开文件,新建一个指针P指向头结点,判断它的指针域是否为空,若为空,则输出“无记录”,若不为空,则将这个职工的所有信息输入到文件中,并将P指向下一个结点,直到P指向空,即输入了的信息,
文件统计模块:打开文件,统计职工数目,并输出。函数为void load(Node *woker)
退出模块:该模块功能是退出管理档案。
(3)重要数据结构,重要模块/函数算法;
1:创建与添加模块:
void Add(Node *woker) //添加记录
{
Node *p,*r,*s;
char n[10]; //先用于输入职工号,也用于判断是否跳出循环
r=woker;
s=woker-next; //使s为第一个有用的结点
while(r-next!=NULL) //这个循环的作用是使r为最后一个有用的结点
r=r-next; //将指针置于最末尾
while(1)
{
printf(提示:输入0则返回主菜单!\n);
printf(\n请你输入职工号:);
scanf(%s,n);
if(strcmp(n,0)==0) break;
p=(Node *)malloc(sizeof(Node))
您可能关注的文档
- 3G技术与规划高级培训班教材之三-关于3G网络规划设计中若干关键环节的考虑汇.ppt
- 3G车载无线监控方案汇.doc
- 3G系列培训教材-3G关键流程讲解汇.ppt
- 400G DWDM Training Plan汇.ppt
- 400td污泥烘干工程自动化控制系统技术方案汇.doc
- 3M 2810快接式模块解决方案汇.ppt
- 400V典型电机回路二次接线图汇.ppt
- 4100操作说明书汇.doc
- 3G时代我国电信市场环境与发展趋势汇.ppt
- 420中央泵房排水设备及供电验算汇.doc
- 辽宁省大连市大连育明高级中学2024-2025学年高一(下)期中考试数学试卷(含答案).pdf
- 青海省西宁市海湖中学2024-2025学年高二(下)期中考试数学试卷(含答案).pdf
- 山东省淄博市实验中学、齐盛高级中学2024-2025学年高二(下)期中数学试卷(含答案).pdf
- 山东省烟台市牟平第一中学2024-2025学年高一(下)5月月考数学试卷(含答案).pdf
- 辽宁省普通高中2024-2025学年高一(下)期中考试数学试卷(含答案).pdf
- 陕西省咸阳市武功县普集高级中学2024-2025学年高二(下)5月月考数学试卷(含答案).pdf
- 陕西省咸阳市武功县普集高级中学2024-2025学年高一(下)5月月考数学试卷(含答案).pdf
- 内蒙古赤峰市林西县第一中学2024-2025学年高二(下)期中数学试卷(选必2,选必3)(含答案).pdf
- 四川省德阳市第五中学2024-2025学年高一(下)期中考试数学试卷(含答案).pdf
- 四川省绵阳市某中学2024-2025学年高二(下)第三学月月考数学试卷(含答案).pdf
最近下载
- 高温试验箱操作说明书.docx VIP
- QJZ6系列说明书要点.doc
- 2025年一年级数学下册 期末试卷 苏教版(含答案).doc VIP
- 《中华人民共和国学前教育法》解读与培训.pptx VIP
- 中小学2023-2024学年江苏省无锡市惠山区金桥实验学校七年级(下)期末地理模拟试卷优质教育教学资.docx VIP
- 2025年高考英语内蒙古卷含解析及答案.docx VIP
- 举杯吧朋友(高考声乐谱考试教学版)原版考级谱伴奏弹唱版有歌词钢琴谱五线谱正谱.pdf VIP
- 中药材GAP综合信息管理系统的初步研究.docx VIP
- 升压站设备安装调试工程施工质量验收及评定范围划分表.docx VIP
- 山东眀嘉勘察测绘有限公司土地整理监理部管理制度.doc VIP
文档评论(0)