图书管理系统
问题描述:设计一个计算机管理系统完成图书管理基本业务。基本要求:
1、每种书的登记内容包括书号、书名、著作者、现存量和库存量;
2、对书号建立索引表(线性表)以提高查找效率;
3、系统主要功能如下:
(1)采编入库:新购一种书,确定书号后,登记到图书帐目表中,如果表中已有,则只将库存量增加;
(2)借阅:如果一种书的现存量大于0,则借出一本,登记借阅者的书证号和归还期限,改变现存量;
(3)归还:注销对借阅者的登记,改变该书的现存量。
关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率

已结题
用python怎么做呀
- ¥10
- python
收起
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
微信扫一扫
点击复制链接分享
- 邀请回答
- 编辑 收藏 删除
- 收藏 举报
追加酬金 (90%的用户在追加酬金后获得了解决方案)
当前问题酬金
¥ 10 (您已提供 ¥ 20, 还可追加 ¥ 490)
支付方式
扫码支付
加载中...
3条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
关注
楼上发的这个可以吗
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
天际的海浪 2022-06-01 20:11关注本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
关注
不需要大改,你的代码里可以把status当做库存量。不过题目要求按线性表的方式存储,所以要建立字典,还有要记录借阅卡,所以再增加一个借阅卡的字典。
import datetime class Book(object): def __init__(self, name, author, status, bookindex): self.name = name self.author = author self.status = status self.bookindex = bookindex def __str__(self): if self.status == 1: stats = '未借出' elif self.status == 0: stats = '已借出' else: stats = '状态异常' return '书名: 《%s》 作者: %s 状态: <%s> 位置: %s' \ % (self.name, self.author, stats, self.bookindex) class BookManage(object): books = {} borrow_card = {} def start(self): self.books['ISO9001']=Book('好心眼巨人', '罗尔德达尔', 1, 'ISO9001') self.books['NFS8102']=Book('女巫', '罗尔德达尔', 1, 'NFS8102') self.books['PKA7844']=Book('昆虫记', '法布尔', 1, 'PKA7844') # 0:借出 1:存在 # python 1 # c 1 # java 1 def Menu(self): self.start() while True: print(""" 图书管理系统 1.查询图书 2.增加图书 3.借阅图书 4.归还图书 5.退出系统 """) choice = input('请选择:') if choice == '1': self.showAllBook() elif choice == '2': self.addBook() elif choice == '3': self.borrowBook() elif choice == '4': self.returnBook() elif choice == '5': print('欢迎下次使用...') exit() else: print('请输入正确选择') continue def showAllBook(self): for book in self.books.values(): print(book) def addBook(self): book_id = input('书号:') name = input('图书名称:') if self.books.get(book_id): self.books[book_id].status += 1 else: self.books[book_id] = Book(name, input('作者:'), 1, input('存储位置:')) print('图书《%s》增加成功' % name) def checkBook(self, name): #name是返回值 for book in self.books.values(): if book.name == name:#如果借阅书的名称在已有的图书中,返回书的名称,否则为空 return book else: return None def borrowBook(self): name = input('借阅图书名称: ') ret = self.checkBook(name) print(ret) if ret != None: if ret.status == 0:#如果书籍的状态为0,说明此书已借出 print('书籍《%s》已经借出' % name) else: card = input('请输入借书卡号:') today = datetime.date.today() if self.borrow_card.get(): self.borrow_card[card][name] = today + datetime.timedelta(30) else: self.borrow_card[card] = {name: today + datetime.timedelta(30)} ret.status -= 1##借出后显示书籍的数量减一 print('书籍《%s》借阅成功' % name) else: print('书籍《%s》不存在' % name) def returnBook(self): name = input('归还图书名称:') ret = self.checkBook(name) if ret != None: #if ret.status == 0: card = input('请输入借书卡号:') del self.borrow_card[card][name] ret.status += 1 print('书籍《%s》归还成功' % name) print(ret) #else: # print('书籍《%s》未借出' % name) else: print('书籍《%s》不存在' % name) manager = BookManage() manager.Menu()
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容
报告相同问题?
提交
- 2022-04-13 22:49回答 1 已采纳 for i in range(1, 101): if i % 7 == 0: print('{} 除以7 = {}, 拍手'.format(i, i // 7))
- 2021-11-03 19:54回答 1 已采纳 import turtle x = 0 color = ["red", "green", "pink"] for i in range(3): turtle.penup() tur
- 2022-04-02 20:14回答 2 已采纳 你函数都没有调用啊,应该有一个主要函数来调用吧你代码是不是不全啊
- 2021-01-01 13:15本文主要是介绍Go,从语言对比分析的角度切入。... 如《编程语言与范式》一文所说,不管语言如何层出不穷,所有语言的设计离不开2个基本面:控制流和数据类型。为了提升语言描述能力,语言一般都提供控制抽象和
- 2023-04-23 21:59回答 2 已采纳 首先,兴趣是最好的老师。然后去了解它,了解编程语言的基础语法和概念,接着就是勤加练习,练习编写简单的程序,掌握语法的使用方法和流程,然后再开始写小项目,可以跟着B站学习,不断地学习和实践,保持对编程语
- 2021-11-05 18:01回答 1 已采纳 个人觉得大学学编程语言的课,老师上课能听课当然是最好的。但是对于我自己来说更多的是去网上找网课看,B站,慕课这些资源很多,人才也很多。不懂的可以反复看,查资料。当然学编程语言更重要的是实践,多写代码,
- 2022-07-08 15:47回答 1 已采纳 呐
- 2021-01-20 06:01Python是一种功能强大的高级编程语言,主要用于科学和工程计算。它是一种高效的语言,优雅务实,简单而强大,适合新手和专业人士的编程。 Python支持多种编程范例,并提出了一个大型标准库,包括面向对象,命令式,...
- 2022-06-01 14:01回答 3 已采纳 原始数据—>滑动窗口L=10截取原始数据得到N个子序列—>线性拟合—>标准化斜率—>子序列符号化处理—>Apriori算法我觉得这个说的挺清楚的啊,关联算法本身解决的是各
- 2021-12-17 17:25回答 2 已采纳 strip用来删除开头、结尾的字符,类似C#语言里的trim函数strip函数可以带参数,比如写a.strip(b),那么把a开头和结尾包含字符串b的部分全部删除(重复多次也一并删除)如果不填参数,默
- 2022-11-13 22:46回答 2 已采纳 a=int(input()) for i in range(1,a+1): print("{}{}".format("."*(a-i),"*"*(i*2-1)))
- 2023-06-19 18:41用 Python 写代码并不难,事实上,它一直以来都是被声称为最容易学习的编程语言。如果你正打算学习 web 开发,Python 是一个不错的选择,甚至你想学游戏开发也可 以从 Python 开始,因为用 Python 来构建游戏的资源...
- 2023-07-19 16:06Python快速编程入门教程,本教程适合新学入门者,博主也在跟着学习,有想学习Python这门语言的,可以做为参考看一下!!!
- 2022-06-12 01:08Python编程语言能做什么软件?.docxPython编程语言能做什么软件?.docxPython编程语言能做什么软件?.docxPython编程语言能做什么软件?.docxPython编程语言能做什么软件?.docxPython编程语言能做什么软件?....
- 2020-12-17 08:16Python作为一种功能强大的编程语言,因其简单易学而受到很多开发者的青睐。那么,Python 的应用领域有哪些呢? 概括起来,Python的应用领域主要有如下几个,这也是学完python将要从事的相关工作。 Web应用开发 ...
- 没有解决我的问题, 去提问
问题事件
悬赏问题
- ¥15 怎么使请求通过cors
- ¥15 WDM 驱动ACPI 相关疑问
- ¥15 prism 跨窗体共享数据绑定 wpf
- ¥15 hdl designer突然用不了系统的moduleware组件,请问有人遇到或者怎么解决吗?
- ¥15 0基础计算机毕设,应该从哪开始?
- ¥60 使用DKT40脑图划分ROI区域
- ¥15 有偿解决C51单片机液晶屏12864显示问题
- ¥15 IDEA构建失败?怎么搞
- ¥15 求该题的simpson,牛顿科特斯matlab代码,越快越好
- ¥35 如何编译arm板子的gcc