- 1、本文档共22页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
宁夏师范学院数学与计算机科学学院
《数据构造实验》实验报告
实验序号:14
实验项目名称:期末大作业
学
号
2016210556
姓
名韩雪萍
专业班级
实验地址
文科楼222
指导教师康凯
时
间
级计本
一班
2017.12.28
一、实验目的
二、实验要求
三、实验设施(环境)及要求
1.环境要求:
硬件:PC(PII以上,128M以上内存);
软件:WindowsXP及以上操作系统、VisualC++6.0版本。
四、实验内容、步骤与结果
期末大作业:
单位职工通信录管理系统(线性表应用)
[问题描绘与要求]
为某个单位成立一个职工通信录管理系统,能够方便查问每一个职工的办公室电话、手机号、及电子邮箱。其功能包含通信录链表的成立、职工通信信息的查问、改正、插入与删除、以及整个通信录表的输出。
[实现提示]
能够采纳单链表的储存构造,如可定义以下的储存构造:
typedefstruct{/*职工通信信息的构造种类定义*/
charnum[5];/*职工编号*/
charname[10];/*职工姓名*/
charphone[15];/*办公室电话号码*/
charcall[15];/*手机号码*/
}DataType;
/*通信录单链表的结点种类*/
typedefstructnode
{DataTypedata;/*结点的数据域*/
structnode*next;/*结点的指针域*/
}ListNode,*LinkList;
五、程序实现(写出每个操作的算法)
#includestdio.h
#includestring.h
#includestdlib.h
typedefstruct
{
charnum[5];
charname[15];
charphone[13];
charcall[15];
chare_mail[30];
}datatype;
typedefstructnode
{
datatypedata;
structnode*next;
}Dnode;
Dnode*head;
Dnode*p;
typedefstruct
nodelinklist;
intmenu( );
Dnode*createlist( );
voidAdd(Dnode*head,Dnode*p);
Dnode*research(Dnode*head);
voidDelete(Dnode*head);
voidprint_list(Dnode*head);
Dnode*Change(Dnode*head,chark[]);
voidSaveandfree( );
voidOpen( );
intmenu( )
{
inti;
printf(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~);
printf(\n);
printf(通信录系统清单\n);
printf(\n);
printf(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~);
printf(\n);
printf(
1.通信录的成立
);
printf(\n);
printf(
2.增添人员信息
);
printf(\n);
printf(
3.删除人员信息
);
printf(\n);
printf(
4.查问人员信息
);
printf(\n);
printf(
5.输出人员信息
);
printf(\n);
printf(
6.改正人员信息
);
printf(\n);
printf(
0.退出并保留
);
printf(\n);
printf(请选择
0-6:);
scanf(%d,i);
while(i0||i6)
{
printf(系统提示:
您输入错误
!\n);
printf(请从头输入
0-6:);
scanf(%d,i);
printf(\n\n);
}
returni;
}
Dnode*createlist( )
{
Dnode*head=(Dnode*)malloc(sizeof(Dnode));
Dnode*p;
Dnode*rear;
charc=n;
rear=head;
while(c==n)
{
p=(Dnode*)malloc(sizeof(Dnode));
printf(请输入编号:\n);
scanf(%s,p-data.num);
printf(请输入姓名:\n);
scanf(%s,p-data.name);
printf(请输入办公室电话:\n);
scanf(%s,p-data.phone);
printf(请输下手机:\n);
scanf(%s,p-
文档评论(0)