当前位置:编程学习 > JAVA >>

求助!!JAVA图书管理系统


本人新人,刚学一个月JAVA,做课后项目...做不出来,特此求助.....最后一步,显示借书和还书记录。。总是错误!!!呼呼头疼,做了一天了  

//************************************************************************************

import java.text.ParseException;
import java.util.Scanner;


public class zongjie {
public static Scanner input =new Scanner(System.in);
public static void returnmain() throws ParseException
{
System.out.println("输入0返回.");
if(input.nextInt() ==0)
{
startMenu();
}
}
public static void startMenu() throws ParseException
{

int choose;
do {
jiemian.mainjiemian();
System.out.print("请选择功能:");
choose = input.nextInt();
switch (choose) {

case 1:
booksmange.xianshibooks();
jhbook.jieshu();//借书
returnmain();
break;
case 2:
jhbook.huanshu();
returnmain();
//还书
break;
case 3:
bookjiemian.bookgl();
returnmain();
//图书管理
break;
case 4:
readerjiemian.duzheguanli();
returnmain();
//读着管理
break;
case 5:
gaunli();
//管理记录
returnmain();
break;
case 0:
break;
default:

System.out.println("输入错误!");
break;
}

} while (choose != 0);
}
public static void gaunli() //这个总结的记录肯定不行需要优化
{
System.out.println("姓名\t学号\t借书\t还书");
for(int i=0;i<50;i++)
{
if(reader.name[i]==null)
{
break;
}
if(reader.a[i]==0)
{ if(reader.index[i]==0) //没借过书
{
System.out.println(reader.name[i]+"\t"+(i+1)+"\t未借\t不用还");

}else //借过书,但还了
{
System.out.println(reader.name[i]+"\t"+(i+1)+"\t"+book.name[reader.b[i]]+"\t还了");
}
if(reader.a[i]>0) //借了,没还
{
System.out.println(reader.name[i]+"\t"+(i+1)+"\t"+book.name[reader.b[i]]+"\t未还");
}
}
}
}

}
Java 图书 管理 --------------------编程问答--------------------
public class book {
public static String[] name = new String[50];
public static int[] jie = new int[50]; // 书本是否被借走
public static int[][] index = new int[50][3]; // 记录被借走书的那个人的下标

public static int [] index1= new int[50]; //接收读者下标
public static void chushi() {
name[0] = "c语言";
jie[0]=1; //0代表借出,1代表未借出

name[1] = "JAVA";
jie[1]=1;
name[2] = "SQL";
jie[2]=1;
}
}
--------------------编程问答--------------------
import java.text.ParseException;
import java.util.Scanner;


public class bookjiemian {
public static Scanner input=new Scanner(System.in); //控制台输入
public static void returnshang() throws ParseException { //返回上一级
while (true) {
System.out.println("输入9返回上一级");
String d = input.next();
if (d.equals("9")) {
bookgl();
} else {
System.out.println("输入错误请重新输入:");
continue;
}
}
}
public static void bookgl() throws ParseException { //图书管理

jiemian.bookjiemian(); //图书管理显示界面
System.out.println("请选择功能:");
int choose = input.nextInt();
switch (choose) {
case 1:
booksmange.addBooks(); //添加功能
booksmange.xianshibooks(); //显示
returnshang(); //返回上1级
break;
case 2:
booksmange.xianshibooks(); //显示
booksmange.genggai(); //修改功能
returnshang(); //同上
break;
case 3:
booksmange.xianshibooks(); //同上
booksmange.shanchu(); //删除
returnshang(); //同上

// 删除
break;
case 4:
booksmange.xianshibooks(); //显示
booksmange.findbooks(); //查找
returnshang(); //返回上一级
// 查找
break;
case 5:
//显示
booksmange.xianshibooks(); //显示
returnshang();
break;
case 6:
zongjie.startMenu(); // 返回上一层
break;
default:
System.out.println("输入错误请重新输入:");
break;
}

}

}
--------------------编程问答--------------------
import java.util.Scanner;

class booksmange {
public static Scanner input = new Scanner(System.in);
public static int index = -1; // 记录查找的下标

public static void addBooks() { // 增加图书

for (int i = 3; i < book.name.length; i++) {
if (book.name[i] == null) {
System.out.println("请输入书本名称:");
book.name[i] = input.next();
book.jie[i] = 1;

System.out.println("是否继续添加(y/n)");
String choose = input.next();
if (choose.equals("n") || choose.equals("N")) {
break;
}
}
}

}

public static void xianshibooks() // 显示图书
{
System.out.println("书本名称\t剩余\t编号");
for (int i = 0; i < book.name.length; i++) { // 循环遍历图书显示
if (book.name[i] == null) { // 如果循环到null就结束
break;
}
System.out.println(book.name[i] + "\t" + book.jie[i] + "\t"+ (i + 1));
}
}

public static void findbooks() // 查找..这个查找就是查找显示
{
System.out.println("请输入书本名称");
String name = input.next();
for (int i = 0; i < book.name.length; i++) {
if (book.name[i] == null) {
System.out.println("没有找到该书!");
break;
}
if (name.equals(book.name[i])) {
if (book.jie[i] == 1) { //如果jie=1代表在书架

System.out.println("书名:" + book.name[i] + "\t在架");
break;
}
if (book.jie[i] == 0) {//如果jie=0代表借出
System.out.println("书名:" + book.name[i] + "\t借出");
break;

}
}
}

}

public static int chazhao(String name) // 这个查找用于删除和更改
{
for (int i = 0; i < book.name.length; i++) {
if (name.equals(book.name[i])) {
index = i; //把查找到啊的下标返回
}

}
return index;
}

public static void genggai() { // 更改
while (true) {
System.out.println("请输入要更改的书本名称:");
String name1 = input.next();

if (chazhao(name1) == -1) { //如果接收的index还是初始值-1就提示没有找到
System.out.println("没有找到你要修改的书!");
} else { //否则....
System.out.println("请重新输入书本名称:");
book.name[chazhao(name1)] = input.next();
book.jie[chazhao(name1)] = 1;
System.out.println("修改成功!"); //提示修改成功
}
System.out.println("是否继续修改(y/n)"); //提示是否继续修改其他
String c = input.next();
if (c.equals("n")) {
break;
}

}
}

public static void shanchu() { //删除
while (true) {
System.out.println("请输入要删除的书本名称:");
String name1 = input.next();

if (chazhao(name1) == -1) { //如果index=-1代表没找到
System.out.println("没有找到你要删除的书!");
} else {
int j = chazhao(name1); //删除过程不解释
book.name[chazhao(name1)] = name1;
while (book.name[j] != null) // 后面的覆盖前面的
{
book.name[j] = book.name[j + 1];
book.jie[j] = book.jie[j + 1];

}
book.name[j] = null; // 最后以为不能是空的
book.jie[j] = 0;

System.out.println("删除成功!");
}
System.out.println("是否继续删除(y/n)"); //提示是否继续删除其他
String c = input.next();
if (c.equals("n")) {
break;
}

}
}
}
补充:Java ,  Eclipse
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,