用java编写一个 图书馆图书借阅管理系统

某图书馆允许每个学生同时只能借得一本图书且借阅时间不得超出1个月,现所有学生借阅的图书的记录均存于流通文件中,每一记录中包括书号、借书人学号,应还书日期。书库文件中记录书... 某图书馆允许每个学生同时只能借得一本图书且借阅时间不得超出1个月,现所有学生借阅的图书的记录均存于流通文件中,每一记录中包括书号、借书人学号,应还书日期。书库文件中记录书名、书号、作者、出版社、出版日期、藏书数。现要求程序用菜单选择并完成下述的功能:

1. 借书功能:要求输入借书人学号及借书日期,如借书人的前面借的书尚未还则打印“You should Return first!”;同时不允许借书,反之则办理借书手续,即:在对应文件中记录借书人学号及借书日期、应还书日期,同时在书库文件中将所借书的藏书数-1。
2. 还书功能:即根据书号及还书日期从流通文件中删去借书人的借书记录,如果书已越期则打印“Time Passed!”;同时对书库文件中将所还的书藏书数+1。
3. 可显示所有借书过期而未还者的信息;
XX月图书逾期情况表
书号 借书人学号 应还书日期
TP301-01 2007***** 01.02.03
4. 查找学号的功能要求采用折半查找的方法实现,并打印查询结果。
5. 退出程序
请高手帮帮忙吧。。。。
展开
 我来答
batahwk
推荐于2017-11-24 · TA获得超过1808个赞
知道小有建树答主
回答量:1175
采纳率:0%
帮助的人:0
展开全部
---------------------------------------------------
给你修改了三个地方:

1.borrowBooks方法中,将System.out.println("你要借吗?"); 改为:
System.out.println("你要借吗?输入1表示借,其他数字表示不借。");

保证输入的时候输入的数字,否则会报出异常。

2.borrowBooks方法中,将self[score] = all[9]; 改为:self[score] = all[i];

如果是all[9],那么就始终是最后一本书籍信息了。

3.have方法中,你是想将所借的书籍信息都打印出来。修改的比较多,下面注释代码是原来的。
void have(Books[] self) {
// for (int i = 0; i < 2; i++) {
// self[i].showBookInfo();
// }

for (int i = 0; i < 3; i++) {
if(self[i]!=null)
self[i].showBookInfo();
}
}

****************** 附上所有代码:*************************

import java.util.Scanner;

public class TestBook {
public static void main(String[] args) {
Books all[] = new Books[10];
Books self[] = new Books[3];
all[0] = new Books("java", 1, "12345", "tom", 34.0f, "人民出版社");
all[1] = new Books("c", 2, "12346", "tnn", 31.0f, "人民出版社");
all[2] = new Books("c++", 3, "12445", "mm", 35.0f, "人民出版社");
all[3] = new Books("c#", 4, "12365", "tt", 38.0f, "人民出版社");
all[4] = new Books("j2se", 5, "13345", "tosm", 31.1f, "人民出版社");
all[5] = new Books("j2ee", 6, "18345", "ttm", 32.0f, "人民出版社");
all[6] = new Books("jsp", 7, "12335", "cc", 33.0f, "人民出版社");
all[7] = new Books("net", 8, "12341", "bb", 36.0f, "人民出版社");
all[8] = new Books("ip", 9, "12343", "aa", 37.0f, "人民出版社");
all[9] = new Books("tcp", 10, "22345", "jj", 39.0f, "人民出版社");
Readers r = new Readers("xiaoming", 101, "1", 3);
r.searchAllBooks(all);
r.borrowBooks(all, self);
r.have(self);
r.give(all, self);
}
}

class Readers {
Scanner scan = new Scanner(System.in);
String names;
int nums;
String classes;
int grade;
int score = 0;

// Books self[]=new Books[3];
Readers(String n, int u, String c, int g) {
names = n;
nums = u;
classes = c;
grade = g;
}

void searchAllBooks(Books[] all) {// 查书
for (int i = 0; i < 10; i++)
all[i].showBookInfo();
// self[score]=all[0];
}

void give(Books[] all, Books[] self) {// 还书
System.out.println("请输入您要还的书的书号");
int n = scan.nextInt();
for (int i = 0; i < 10; i++) {
if (n == all[i].num) {
for (int j = 0; j < 3; j++) {
if (self[j] == all[i]) {
self[j] = null;
System.out.println("还书成功");
}
}
}
}
}

void have(Books[] self) {
// for (int i = 0; i < 2; i++) {
// self[i].showBookInfo();
// }
for (int i = 0; i < 3; i++) {
if(self[i]!=null)
self[i].showBookInfo();
}
}

void giveMoney() {

}

void borrowBooks(Books[] all, Books[] self) {
System.out.println("请输入您要查找的书名:");
String n = scan.next();
int i;
for (i = 0; i < 10; i++) {
if (n.equals(all[i].name)) {
all[i].showBookInfo();
break;
}
}
//System.out.println("你要借吗?");
System.out.println("你要借吗?输入1表示借,其他数字表示不借。");
int j;
j = scan.nextInt();
if (j == 1) {
System.out.println("借阅成功");
//self[score] = all[9];
self[score] = all[i];
score += 1;

}
if (score < 4) {
System.out.println("您还可以借阅" + (3 - score) + "本");
} else {
System.out.println("对不起,一个人只能借3本");
}
}
}

class Books {
String name;
int num;
String ISBN;
String writer;
float price;
String publisher;

Books(String n, int u, String i, String w, float p, String l) {
name = n;
num = u;
ISBN = i;
writer = w;
price = p;
publisher = l;
}

void showBookInfo() {
System.out.println("**************************");
System.out.println("书名:" + name);
System.out.println("索书号:" + num);
System.out.println("ISBN号:" + ISBN);
System.out.println("价格:" + price);
System.out.println("出版社:" + publisher);
System.out.println("**************************");
}

}

----------------------------------------------------
北京今方知
2024-09-26 广告
北京今方知科技服务有限公司是一家致力于版权登记、商标注册、专利服务、高新技术企业认定、专精特新于一体的服务公司。拥有一批从业多年的专业人才,致力为客户提供全方位知识产权解决方案。在多年的发展历程中,我们始终专注于知识产权保护领域,在各类商标... 点击进入详情页
本回答由北京今方知提供
me...6@betv777.com
2018-01-09
知道答主
回答量:1
采纳率:0%
帮助的人:892
展开全部
我看了你上面说的功能要求《百 宝 云》都可以满足
你要是懂一点技术,那更好接入了
功能是自己设计,拖拉式的控件字段,很简单
一般都有借书、还书、姓名、日期、书的相关信息。还有还书提醒、自动扫码。。。。、
希望对你有帮助
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
原力森林dq
2011-05-24
知道答主
回答量:95
采纳率:0%
帮助的人:31.5万
展开全部
这个去程序员网找去
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式