ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:79.96KB ,
资源ID:3612199      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-3612199.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(东北大学数据结构上机实验报告Word文档格式.docx)为本站会员(b****1)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

东北大学数据结构上机实验报告Word文档格式.docx

1、 char price10; /定价 ElemType; 单链表结点类型typedef struct LNode ElemType data; struct LNode *next; LinkList;各程序模块之间的调用关系4、详细设计 初始化创建头结点 实现线性表的初始化 L = (LinkList *) malloc(sizeof(LinkList); L-next = NULL; 用户界面运用printf函数 录入 int i, n; LinkList *s, *q, *p; /创建单链表 p = L; while (p-next != NULL ) p = p-next; print

2、f(请输入需要录入的图书信息的个数:n=); scanf(%d, &n); for (i = 1; i data.num, s-data.name, s-data.author, s-data.press, &data.count, s-data.price); q = L- if (q = NULL ) /下一个节点为空 即此节点为尾节点 p-next = s; p = s; printf(录入成功!n continue; while (q != NULL ) if (strcmp(s-data.name, q-data.name) = 0) printf(此图书已存在!请重新输入: sca

3、nf(p-data.num, p-data.name, p-data.author, p-data.count, q = q- p- p = s; Sleep(1000); system(cls menu(); return 0;查询 LinkList *p = L- /p指向第一个数据结点 int c; int x = 0; char name110, author110, press110; 1 按书名查询: 2 按作者名查询: 3 按出版社名称: 4 返回n 请选择1-4进行操作:c); if (c 4 | c data.name) != 0) /查找图书书名 p = p- else %

4、dt%st%st%st%dt%s, p-data.press, p- x+; Sleep(2000); if (p = NULL & x = 0)对不起,不存在此图书! break; case 2:请输入图书作者:, author1); if (strcmp(author1, p-data.author) != 0) /查找图书作者 case 3:请输入图书的出版社名称:, press1); if (strcmp(press1, p-data.press) != 0) /查找图书出版社名称%d %s %s %s %d %s,data.name, p-data.count, p-对不起!不存在此

5、图书n case 4:五、调试分析 所遇问题的解决方法及分析 当我编写录入函数时,对如何将数据储存到链表中无从下手。 后来经过查询和多次尝试,决定用尾插法建立链表,采用这样的方法简单明了,易于编程。 算法的时空分析及改进设想O(n) 经验和体会通过这次的上机实验,让我们对线性表的理解又有了进一步的提升,更加清楚地了解到线性表的储存方式。6、使用说明 打开程序,根据界面提示即可7、测试结果(截屏)8、附录#include string.h#includemalloc.hwindows.htypedef struct LNode /定义单链表结点类型void menu() /菜单函数- n 欢迎光

6、临图书管理系统!- n1.图书信息录入添加功能:2.图书信息查询功能:3.图书信息排序功能:4.图书的修改功能:5.图书的删除功能:0.退出系统:请选择你需要的操作:void InitList(LinkList *L) /初始化线性表 /创建头结点int CreateListR(LinkList *L) /尾插法建表 i+) if (q = NULL ) void LocateElem(LinkList *L) /查询 LinkList *p = L- switch (c) int Sort(LinkList *L) /递增有序排序(直接插入排序法)next, *q, *r; if (p !=

7、 NULL ) /若原单链表中有一个或以上的数据结点 r = p- /r保存*p结点直接后继结点的指针 /构造只含一个数据结点的有序表 p = r; r = p- /r保存*p结点的直接后继结点的指针 q = L; while (q-= NULL & q-next-data.num data.num) q = q- /在有序表中找插入*p的直接前驱结点*q的位置next = q- /将*p插入到*q之后 q-next = p; p = r; /扫描原单链表余下的结点void Display(LinkList *L) /输出排序结果 while (p !%d t %s t %st %st%dt

8、%sdata.num, p-int ModifyList(LinkList *L) /修改 LinkList *p = L; char name110;请输入要修改的图书的书名: if (strcmp(name1, p-data.name) = 0) /查找所要修改的书名 请输入修改后的信息! scanf( p-修改成功! return 0;int ListDelete(LinkList *L) /删除next, *q = L;请输入要删除的书名: strcmp(p-data.name, name1) != 0) q = q- if (p-= NULL ) /如果p此时不是最后一个节点,说明此

9、时已经找到书 q-next = p-删除成功! return 0;next = NULL & strcmp(name1, p-= 0) /如果p此时为最后一个结点并且没有找到与之相符的书名 你输入的书名不存在,请核实后重新输入! else int main() /主函数 int s; LinkList *L; InitList(L);请输入编号:s); while (s ! switch (s) case 1: CreateListR(L); break; case 2: LocateElem(L); case 3: Sort(L); Display(L); case 4: ModifyList(L); case 5: ListDelete(L); case 6: Borrow(L); case 7: Return(L); case 0:谢谢使用n

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

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