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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

图书馆系统.docx

1、图书馆系统 目录一问题描述二基本要求三算法思想四数据结构五源程序代码六测试结果七流程图八实验总结一 问题描述小型图书管理系统创建一个图书管理系统,可以进行图书信息录入,图书信息查询,所有图书信息浏览,图书信息修改,图书信息删除,退出系统等操作。二 基本要求 (1) 所有信息存储在一个带头结点的单向链表中,每个结点存储一条图书记录,即结构体(book),其中各域为:书名、作者、出版社、定价、ISBN,以及指针域。(2) 系统初始时图书记录为空,由用户录入相关的信息,进行插入,查找,删除等等操作。(3) 如输入有错,给出错误提示。三.算法思想根据实验要求,该系统需要设置6个选项,分别为图书信息的录

2、入,浏览,查询,修改,删除和退出系统。首先建立单链表,节点存储图书的属性,在用模块化的思维方式编写程序,要哦来过到if,break等语法知识。四.数据结构 基本抽象数据类型:建立线性表的链式存储结构:你用链式存储结构建立一单向循环链表!typedef struct char author10; char name20; char pub20; float price; char ISBN10; DataType;typedef struct node DataType data; struct node *next;Book;void Listinitiate(Book *head) *hea

3、d=(Book*)malloc(sizeof(Book); (*head)-next=NULL; 五源程序代码#include #include #include #includetypedef struct char author10; char name20; char pub20; float price; char ISBN10; DataType;typedef struct node DataType data; struct node *next;Book;void Listinitiate(Book *head) *head=(Book*)malloc(sizeof(Book)

4、; (*head)-next=NULL;int luru(Book *head)阿 Book *p,*s; char tag=Y; p=head; while(p-next!=NULL) p=p-next; while(tag=Y|tag=y) s=(Book*)malloc(sizeof(Book); printf(请输入图书的名称 :n); scanf(%s,s-data.name); printf(请输入图书的作者:n); scanf(%s,&s-data.author); printf(请输入图书的出版社:n); scanf(%s,&s-data.pub); printf(请输入图书的

5、价格:n); scanf(%f,&s-data.price); printf(请输入图书的ISBN:n); scanf(%s,&s-data.ISBN); fflush(stdin); s-next=NULL; p-next=s; p=s; printf(-添加图书信息成功!-n); printf(-还继续添加图书信息吗?Y OR N-n); scanf(%c,&tag); printf(n); if(tag=Y|tag=y) continue; else if(tag=N|tag=n) break; return 1;int chaxun(Book *head) Book *p; int t

6、ag=0; char nam20; printf(请输入您想查找的图书名称!); scanf(%s,nam); for(p=head; p!=NULL;p=p-next) if(strcmp(p-data.name,nam)=0) printf(图书的相关信息如下:n); printf(-图书的名称为: %sn,p-data.name); printf(-图书的作者为: %sn,p-data.author); printf(-图书的出版社为: %sn,p-data.pub); printf(-图书的价格为 : %.2fn,p-data.price); printf(-图书的ISBN为 : %s

7、n,p-data.ISBN); tag=1; if(tag=0) printf(没有您查找的图书的相关信息!n); return 1;int liuluan(Book *head) Book *p; p=head; while(p-next!=NULL) p=p-next; printf(图书的相关信息如下:n); printf(-图书的名称为: %sn,p-data.name); printf(-图书的作者为: %sn,p-data.author); printf(-图书的出版社为: %sn,p-data.pub); printf(-图书的价格为 : %.2fn,p-data.price);

8、 printf(-图书的ISBN为 : %sn,p-data.ISBN); return 1;int change(Book *head) Book *p; char nam20; printf(请输入要修改的图书的名称!); scanf(%s,nam); for(p=head; p!=NULL;p=p-next) if(strcmp(p-data.name,nam)=0) printf(请输入图书的新名称为: ); scanf(%s,p-data.name); printf(请输入图书的新作者为: ); scanf(%s,p-data.author); printf(请输入图书的新出版社为:

9、 ); scanf(%s,p-data.pub); printf(请输入图书的新价格为: ); scanf(%f,&p-data.price); printf(请输入图书的ISBN为: ); scanf(%s,p-data.ISBN); return 1;int del(Book *p0) char nam20; int flag=1; Book *p; p=p0; printf(请输入要删除的书名:n); scanf(%s,&nam); while(p!=NULL) if(strcmp(p-data.name,nam)=0) p0-next=p-next; free(p); printf(t

10、该书资料已删除n); break; p0=p; p=p-next; return 1;void caidan() printf( = n); printf( 欢迎进入图书馆管理系统 n); printf( 1图书信息录入 n); printf( 2图书信息浏览 n); printf( 3图书信息查询 n); printf( 4图书信息修改 n); printf( 5图书信息删除 n); printf( 6退出系统 n); printf( 请选择:); fflush(stdin);int main() Book *head; char choice; Listinitiate(&head); f

11、or(;) caidan(); scanf(%c,&choice); if(choice=1) luru(head); else if(choice=2) liuluan(head); else if(choice=3) chaxun(head); else if(choice=4) change(head); else if(choice=5) del(head); else if(choice=6) printf( = n); printf(n 感谢使用图书管理系统 ! n);break; else printf( = 输入错误,请重新输入!=n); 六测试结果 1.录入信息 2.浏览信息 3.信息查询 4.修改信息 5.浏览信息 6.删除信息 7.浏览信息 七流程图 八实验总结试验中遇到了很多问题,使我明白了自己的很多不足之处,让我意识到了知识是在平时的积累中产生的,在选择操作时,对很多语法知识大多很模糊,但最终通过各种途径还是解决了,特别是容易忽略的=和=的区别,尤其要注意。 经过本次的学习,使我对链表的存储结构和应用能力有了显著的提高,对fflush(stdin)的用法有了比较清晰的认知。

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

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