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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(单链表实现图书管理系统.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单链表实现图书管理系统.docx

1、单链表实现图书管理系统单链表:typedef struct char num20; char name50; float pri; Book;typedef struct LNode /线性表的单链表存储 Book book; /数据域 struct LNode *next; /指针域LNode,*LinkList;void Input(LinkList &L) /前插法创建图书链表 LinkList p; L=new LNode; L-next=NULL;/初始化单链表 ifstream inFile(book.txt); if(!inFile) cerrCannot open this f

2、ile!book_head1book_head2book_head3;/读取文件中的标题 while(!inFile.eof()/到达文件尾部前逐行依次读取所有图书数据 p=new LNode; /生成新结点 inFilep-book.nump-book.namep-book.pri; p-next=L-next; /插入到表头 L-next=p;h inFile.close(); cout读取完毕!next; while(p) coutleftsetw(15)book.numtleftsetw(50)book.nametleftsetw(5)book.prinext; coutn信息显示完毕

3、nnext; char name120; coutname1; while(p) if(strcmp(name1,p-book.name)=0) coutleftsetw(15)book.numtleftsetw(50)book.nametleftsetw(5)book.prinext; void Searchnum(LinkList &L) int i; int j=0; LinkList p; p=L-next; /p指向第一个结点 couti; while(p&jnext; if(!p|ji) /第i个元素不存在 cout错误!endl; cout第i本书信息如下:endl; coutl

4、eftsetw(15)book.numtleftsetw(50)book.nametleftsetw(5)book.prinext; p=L-next-next; while(p) if(p-book.pripmax-book.pri) pmax=p; p=p-next; coutleftsetw(15)book.numtleftsetw(50)book.nametleftsetw(5)book.priendl;void Sort(LinkList L) cout此功能还未实现,研究中next; L-next = NULL; /初始化链表 ofstream outFile(bookinvers

5、e.txt); /每一次将p插入到L(头结点)与L-next(链表的第一个结点之间) while (p) q = p-next; p-next = L-next; L-next = p; p = q; p=L-next;/循环完后,p指向的是链表末尾,需要重置回首元结点,否则无法写入文件 while(p) coutsetw(15)book.numtsetw(50)book.nametsetw(5)book.priendl; outFileleftsetw(15)book.numtleftsetw(50)book.nametleftsetw(5)book.prinext; cout信息已写入bo

6、okinverse.txt中!next; while(p) i+; p=p-next; cout当前的图书总数为:iendl;void Insert(LinkList L) Book bk; LinkList p=L; /初始化 LinkList s=new LNode; /新结点s int i; int j=0; cout请输入待插入书籍的位置i; cout请输入待插入的书籍的信息endl; cout书号: bk.num; cout书名: bk.name; cout价格: bk.pri; while(p&jnext; if(!p|ji-1) cout错误!book=bk; /将结点s的数据域

7、置为bk s-next=p-next; /将结点s插入L中 p-next=s; /重新写入book.txt文件 ofstream outFile(book.txt); p=L-next; while(p) outFileleftsetw(15)book.numtleftsetw(50)book.nametleftsetw(5)book.prinext; cout插入新的书籍后的书籍信息已重新写入book.txt文件endl;void Delete(LinkList L) Book bk1; LinkList p=L; /初始化 LinkList q; /临时保存被删除结点的地址以备释放 int

8、 i; int j=0; cout请输入待删除书籍的位置i; while(p-next&jnext; if(!(p-next)|ji-1) cout错误!next; p-next=q-next; bk1=q-book; delete q; /重新写入book.txt文件 ofstream outFile(book.txt); p=L-next; while(p) outFileleftsetw(15)book.numtleftsetw(50)book.nametleftsetw(5)book.prinext; cout删除所选书籍后的书籍信息已重新写入book.txt文件endl;顺序表typ

9、edef struct Book *book; int length;/图书表的图书记录个数SqList;void Input(SqList &L) int i=0; char book_head110,book_head210,book_head310; /定义文件中标题 L.book=new BookMAXSIZE; ifstream inFile(book.txt); /打开文件 if(!inFile) cerrCannot open this file!book_head1book_head2book_head3;/读取文件中的标题 L.length=0; while(!inFile.

10、eof() /逐行依次读取所有图书数据 inFileL.booki.num L.booki.nameL.booki.pri; i+; /记录图书个数 L.length=i; inFile.close(); coutn读取 book.txt 信息完毕!endl;void Output(SqList L) for(int i=0;iL.length;i+) coutleftsetw(15)L.booki.numtleftsetw(50)L.booki.nametleftsetw(5)L.booki.priendl; coutn信息显示完毕nendl; void Searchname(SqList &L) int y; char name120; coutname1; for(y=0;yL.length;y+) /比较输入的name1与结构体数组中name是否相同; if(strcmp(name1,L.booky.name)=0) coutl

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1