欢迎来到天天文库
浏览记录
ID:14153152
大小:99.50 KB
页数:14页
时间:2018-07-26
《用简单链表管理员工信息》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、沈阳航空工业学院课程设计学号200604021116班级6402104姓名段伟指导教师刘成2007年9月15日沈阳航空工业学院课程设计任务书院系:电子专业:电子信息工程班级:6402104学号:200604021116题目:用简单链表管理员工信息一、课程设计时间2007年9月10日至2007年9月14日,共计1周,20学时。二、课程设计内容用C语言编写软件完成以下任务:从键盘输入4位员工的信息到动态创建的线性单向链表中;然后通过访问该链表,将其中的所有节点中的员工信息存放到文件myfile.dat中。每位员工的信息如下:杜永
2、宁软件部5760王传华销售部3920殷泳培训部2940杨柳青软件部5440。三、课程设计要求1.程序质量:²贯彻结构化的程序设计思想。²用户界面友好,功能明确,操作方便。²用户界面中的菜单至少应包括“输入员工信息”、“显示员工信息”、“保存员工信息”、“退出”4项。²代码应适当缩进,并给出必要的注释,以增强程序的可读性。2.课程设计说明书:课程结束后,上交课程设计说明书和源程序。课程设计说明书的格式和内容参见提供的模板。四、指导教师和学生签字指导教师:学生签名:五、成绩:六、教师评语:沈阳航院设计用纸目录一、需求分析1二、程
3、序流程图2三、核心技术的实现说明及相应程序段5四、个人总结8五、参考文献8六、源程序911沈阳航院设计用纸一、需求分析经过对程序设计题目的分析可知,整个程序的设计实现大致分为三个模块,其中每一个模块对应一个函数,他们的功能分别是:输入信息creat();显示信息print();保存信息save().1、creat()主要实现输入员工信息功能;2、print()实现的功能是把输入的信息显示出来;3、save()实现的功能是保存输入的信息。除上面介绍的功能之外,程序还具有退出功能,可以在程序的一次运行当中循环执行所有的功能,并根
4、据需要终止程序的执行。每一个员工记录都包含姓名,部门以及编号,在程序当中,将学生记录类型定义为结构体类型。11沈阳航院设计用纸二、程序流程图1、程序总体结构图是i=1?否输入员工信息是i=2?否显示员工信息是i=3?否保存员工信息是i=4?否退出错误的选择图一程序总体结构图11沈阳航院设计用纸2、具体功能框图(1)输入信息函数开辟一个新节点,并使p1,p2指向它读入一个员工数据给p1所指的结点head=NULL,n=0当读入的P1ànum不是零n=n+1真n=1?假head=p1(把p1所指的结点作为第一个结点)p2ànex
5、t=p1(把p1所指的结点连接到表尾)p2=p1(p2移到表尾)再开辟一个新结点,使p1指向它读入一个员工数据给p1所指结点表尾结点的指针变量置NULL图2creat()函数11沈阳航院设计用纸(2)显示信息函数p=head,使p指向第一个结点p指向的不是尾结点真假输出p所指的结点p指向下一个结点当p指向的不是表尾图3print()函数(3)保存信息函数打开文件名为“myfile”的文件(fopen())写入员工信息(fwrite())关闭文件(fclose())图4save()函数11沈阳航院设计用纸三、核心技术的实现说明
6、及相应程序段本程序主要由四个自定义函数(包括一个菜单函数)和一个主函数组成,其中主函数以菜单的形式调用其他函数来实现要求的所有功能。在这些函数当中,输入信息函数、显示信息函数和保存信息函数是程序中较为核心的部分,下面分别进行说明。1、输入信息函数(建立链表)建立链表即一个一个的开辟结点和输入各结点数据并建立起前后相链的关系.以姓名,部门,编号的格式输入员工信息:(先建立一个员工信息的结构体)structemp{charname[20];chardep[20];intnum;structemp*next;};intn;stru
7、ctempcreat(void)/*定义函数,此函数带回一个指向链表头的指针*/11沈阳航院设计用纸{structemp*head;structemp*p1,*p2;n=0;p1=p2=(structemp)malloc(LEN);/*开辟一个新单元*/scanf("%s%s%d",&p1->name,&p1->dep,&p1->num);head=NULL;while(p1->num!=0)/*循环控制输入*/{n=n+1;if(n==1)head=p1;elsep2->next=p1;p2=p1;p1=(structem
8、p*)malloc(LEN);scanf("%s%s%d",&p1->name,&p1->dep,&p1->num);}p2->next=NULL;return(head);/*函数返回头结点*/}2.显示信息的函数(输出链表)同样是以姓名,部门,编号的格式输出员工信息:voidprint
此文档下载收益归作者所有