欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    《数据结构》课程设计之企业员工信息管理系统设计与实现.doc

    • 资源ID:4841696       资源大小:274.50KB        全文页数:24页
    • 资源格式: DOC        下载积分:12金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《数据结构》课程设计之企业员工信息管理系统设计与实现.doc

    1、算法与数据结构课程设计题目:企业员工信息管理系统设计与实现院、 系: 计算机信息与技术系学科专业: 软件工程 学 号: B10060XXX 学生姓名: XX 指导教师: X X 2012年9月16日目 录第一章 设计要求21.1 问题描述21.2 需求分析2第二章 概要设计32.1 主界面设计32.2 存储结构设计32.3 系统功能设计4第三章 模块设计43.1 系统子程序及功能设计43.2 系统功能图5第四章 详细设计54.1 数据类型定义54.2 系统主要子程序详细设计61.显示函数:62.删除函数:63.查询函数:74.修改函数:95.主函数:108.其他函数:11第五章 测试分析125

    2、.程序各功能的运行结果:125.1系统主界面125.2建立信息125.3修改信息135.4查询信息135.5显示信息145.6删除信息145.7退出系统15第六章 源程序清单16第七章 工作总结23第八章 参考文献23第一章 设计要求1.1 问题描述企业员工信息管理系统,包括企业中所有员工的基本信息,如:工号、姓名、性别、学历等。且该系统能够完成新员工的增添、所有员工信息的相应查询、修改、删除等各项功能。1.2 需求分析(1)在相应的每条记录中,应该包括该员工的所有信息,如:工号、姓名、性别、学历等;(2)根据不同关键字(如工号,姓名等),对所有员工的信息进行排序;(3)按照指定条件查找某个员

    3、工的所有信息;(4)按工号对某个员工的信息进行修改;(5)添加新员工的信息;(6)按工删除已离职、退休员工的信息;(7)与此同时,除了以上基本的需求以外,该企业员工信息管理系统的程序源代码还应具有良好的编程结构和适当的注释,运行界面清晰,提示内容明确,易于操作。第二章 概要设计2.1 主界面设计 当输入相应的操作字符(如:数字0-6),实现并完成各项功能操作(如:建立、修改、删除、显示、退出等)。系统主界面如下:2.2 存储结构设计依据给定的数据格式,个人信息由四个字段来组成,即工号、姓名、性别、学历,外加一个判断关键字。如: 工号 | 姓名 | 性别 | 学历 123 feng n daxu

    4、e 本课程设计根据功能需求,使用线性结构来组织数据,由于要对表中某项数据进行插入、删除操作,所以使用链表比较方便。2.3 系统功能设计依据程序的数据结构和功能,遵照“自顶向下,逐步细化”原则,描述该程序的层次结构,在总体上包括数据的增添、修改、删除、查询以及数据的显示等功能模块。(1)新增函数功能:通过输入各项数据给数据元素,来建立一个数据表。(2)显示函数功能:输出表中所有节点的信息。(3)查询函数功能:按照指定关键字,对相应员工信息进行查询。(4)修改函数功能:输入员工工号,查询员工信息,对其信息进行修改。(5)删除函数功能:查找到要删除员工的相应信息,并将其从表中永久的删除。(6)主函数

    5、功能:调用以上子函数,并用开关语句进行选择性的调用。第三章 模块设计3.1 系统子程序及功能设计(1) 新增员工信息,利用函数: creatlist(linklist &L)(2) 显示所有员工信息,利用函数: display(linklist &L)(3) 删除员工信息,是按员工工号删除,利用函数: delet(linklist &L,char num6)(4) 查询员工信息,按工号和姓名进行查询;按工号查询利用函数: searchnum(linklist &L,char num10) ; 按姓名查询利用函数: searchname(linklist &L,char name10)(5) 修

    6、改员工信息,利用函数: alter(linklist &L,char num6)3.2 系统功能图主页面建立链表查询显示信息退出修改删除按工号按姓名按工号图3-2 系统功能图第四章 详细设计4.1 数据类型定义结构体定义:typedef struct node char num6; /工号 char name10; /姓名 char sex6; /性别 char degree20; /学历 struct node *next; /指针域 node,*linklist;4.2 系统主要子程序详细设计1. 显示函数函数原型: void display(linklist &L)函数功能:输出表中所有

    7、节点的信息。算法要点:使用循环输出所有信息。主要算法:void display(linklist &L)linklist p;for(p=L-next;p;p=p-next)printf(工号 %s,p-num);printf(姓名 %s,p-name);printf(性别 %s,p-sex);printf(学历 %s,p-edu);2. 删除函数函数原型:void delet(linklist &L,char num6)函数功能:查找到要删除员工的相应信息,并将其从表中永久的删除。算法要点:(1) 按关键字查找信息;(2) 链表中删除节点信息,并释放节点空间。主要算法:int delet(l

    8、inklist &L, char num6)node *p; /*实现删除操作的临时的结构体指针变量*/node *r; p=L-next;r=L; if(!L-next) /当list无后继结点时,提示和结束返回del()printf(n=提示:没有记录可以删除!n); printf(n);return 1; while(!(strcmp(p-num,num)=0)&p)r=p;p=p-next;if(!p)printf(nnttt 找不到该职工信息!n);elser-next=p-next; free(p);printf(删除成功n);printf(n);return 1;3. 查询函数(

    9、1)按工号查询int searchnum(linklist &L,char num10)node *p;p=L;while(p)if(strcmp(p-num,num)=0)printf(t);printf(工号 %s,p-num);printf(t);printf(姓名 %s,p-name);printf(n);printf(t);printf(性别 %s,p-sex);printf(t);printf(t);printf(学历 %s,p-edu);printf(n);p=p-next;return 1;(2)按姓名查询int searchname(linklist &L,char name

    10、10)node *p;p=L;while(p)if(strcmp(p-name,name)=0)printf(t);printf(工号 %s,p-num);printf(t);printf(姓名 %s,p-name);printf(n);printf(t);printf(性别 %s,p-sex);printf(t);printf(t);printf(学历 %s,p-edu);printf(n);p=p-next;return 1;4. 修改函数 (按工号修改)int alter(linklist &L,char num6)node *p;p=L;while(p)if(strcmp(p-num,

    11、num)=0)printf(请输入员工的工号:n);printf(您输入的是:); printf(t); scanf(%s,p-num); printf(请输入员工的姓名:n); printf(您输入的是:); printf(t); scanf(%s,p-name); printf(请输入员工的性别:n); printf(您输入的是:); printf(t); scanf(%s,p-sex); printf(请输入员工的学历:n); printf(您输入的是:); printf(t); scanf(%s,p-edu); p=p-next; printf(n); return 1;5. 主函数主

    12、函数主要是调用以上的子函数,用开关语句进行选择性的调用。大致程序如下:void main()linklist L;int a;char m;char name10; char num6;initlist(L);int g;int f=1;while(f)menu();scanf(%d,&g);printf(n);switch(g)case 1: creatlist(L); do printf(是否继续输入?(y/n); printf(t); getchar(); scanf(%c,&m); if(m=y) creatlist(L); while(m!=n); printf(n); break;

    13、 case 2: printf(请输入修改员工的工号:); printf(您输入的是:); printf(t); getchar(); scanf(%s,&num); alter(L,num); printf(n); break; case 0: f=0; printf(nn); break;6. 其他函数这些函数主要起到辅助功能,比如:菜单函数,主要起到引导作用;菜单函数原型:void menu()第五章 测试分析5. 程序各功能的运行结果:5.1 系统主界面5.2 建立信息(1)首先输入操作字符“1”;(2)接着输入员工信息;(3)最后输入操作字符“n”结束输入。5.3 修改信息(1)首先

    14、输入操作字符“2”;(2)再输入新的员工信息, 5.4 查询信息(1)首先输入操作字符“3”;(2)接着输入操作字符“1”或者“2”(即实现按“工号”查询,或者按“姓名”查询);(3)再输入编号的字符“1”;5.5 显示信息输入操作字符“5”;5.6 删除信息输入操作字符“4”; 5.7退出系统输入操作字符“0”;第六章 源程序清单#include#include#includetypedef struct node /定义节点类型char num6;char name10;char sex3;char edu6;struct node *next;node,*linklist;int cre

    15、atlist(linklist &L) /头插法生成单链表linklist p;p=(linklist)malloc(sizeof(node);if(!p)return (0);elseprintf(请输入员工的工号:n);printf(t);scanf(%s,p-num); printf(请输入员工的姓名:n);printf(t);scanf(%s,p-name); printf(请输入员工的性别:n);printf(t); scanf(%s,p-sex); printf(请输入员工的学历:n);printf(t); scanf(%s,p-edu); p-next=L-next; L-nex

    16、t=p;int initlist(linklist &L) /初始化单链表L=(linklist)malloc(sizeof(node);if(!L)return (0);L-next=NULL;return 1;void meau()printf(t* _ 欢迎使用企业员工信息系统 _ *n);printf(n); printf(t * 1 建立员工信息表 *n); printf(t * 2 插入新员工信息 *n); printf(t * 3 查询员工信息记录 *n); printf(t * 4 删除员工信息记录 *n); printf(t * 5 显示员工信息 *n); printf(t

    17、* 0 退出管理系统 *n); printf(n);printf(t* _ 欢迎使用企业员工信息系统 _ *n);printf(n);printf(t XXXn);printf(t 2012年9月12日n);printf(n);printf(请您从0-5中选择: n);printf(您选择的是:);printf(t);void display(linklist &L) /显示所有员工信息linklist p;for(p=L-next;p;p=p-next)printf(t);printf(工号 %s,p-num);printf(t);printf(姓名 %s,p-name);printf(n)

    18、;printf(t);printf(性别 %s,p-sex);printf(t);printf(t);printf(学历 %s,p-edu);printf(n);printf(n);printf(n);int delet(linklist &L,char num6) /按工号删除node *p; /*实现删除操作的临时的结构体指针变量*/node *r; p=L-next;r=L; if(!L-next) /当list无后继结点时,提示和结束返回del()printf(n=提示:没有记录可以删除!n); printf(n);return 1; while(!(strcmp(p-num,num)

    19、=0)&p)r=p;p=p-next;if(!p)printf(nnttt 找不到该职工信息!n);elser-next=p-next; free(p);printf(删除成功n);printf(n);return 1;int searchnum(linklist &L,char num10) /查询工号node *p;p=L;while(p)if(strcmp(p-num,num)=0)printf(t); printf(工号 %s,p-num); printf(t); printf(姓名 %s,p-name); printf(n); printf(t); printf(性别 %s,p-se

    20、x); printf(t); printf(t); printf(学历 %s,p-edu); printf(n); p=p-next; return 1;int searchname(linklist &L,char name10) /查询姓名node *p;p=L;while(p)if(strcmp(p-name,name)=0)printf(t); printf(工号 %s,p-num); printf(t); printf(姓名 %s,p-name); printf(n); printf(t); printf(性别 %s,p-sex); printf(t); printf(t); pri

    21、ntf(学历 %s,p-edu); printf(n); p=p-next; return 1;int alter(linklist &L,char num6) /修改信息node *p;p=L;while(p)if(strcmp(p-num,num)=0)printf(请输入员工的工号:n);printf(您输入的是:); printf(t); scanf(%s,p-num); printf(请输入员工的姓名:n); printf(您输入的是:); printf(t); scanf(%s,p-name); printf(请输入员工的性别:n); printf(您输入的是:); printf(t); scanf(%s,p-sex); printf(请输入员工的学历:n); printf(您输入的是:); printf(t); scanf(%s,p-edu); p=p-next; printf(n); return 1;void main() /主函数linklist L;i


    注意事项

    本文(《数据结构》课程设计之企业员工信息管理系统设计与实现.doc)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开