1、 目 录 一、设计题目 1 二、设计目的 1 三、设计分析 1 四、功能设计 1 五、设计总结 4 参考文献 4 附录 5 一、设计题目 图书销售管理系统 二、设计目的 1. 运用已学过的知识进行一个简单的应用程序的开发。 2. 基本掌握设计课题的基本步骤和方法。 3. 掌握应用系统开发中的需求分析与数据库设计方法。 4. 基本掌握应用系统开发中设计文档的编制。 三、设计分析 图书管理系统包括功能: 卖出图书 查询图书信息 显示图书信息 删除图书信息 添加图书信息 查询图书信息功能中提供了多种查询图书的方法,包含: 1
2、 按序号查询 2 按书名查询 3 按作者查询 4 按出版社查询 5 按ISBN查询 四、功能分析 此图为图书销售管理系统的功能图,此图表示出系统的所有功能模块,包括图书登陆功能,卖书、图书维护和顾客管理功能,其中图书维护中还包括对图书的增删改查功能,顾客管理中也包括对顾客信息的增删改查功能,如图1所示.。 图书销售系统 增 删 改 查 显示 全删 增删改查 显示 全删 售出 图书管理 退出 顾客管理 退货 注册登陆 图1 功能模块图 1.图书销售管理系统主界面 (图1-1) 2.售出图书 (图2-1) 3.查询图书
3、界面 (图3-1) 按序号查询 (图3-2) 按书名查询 (图3-3) 按作者名查询 (图3-4) 按出版社查询 (图3-5) 按ISBN查询 (图3-6) 4.显示图书信息 (图4-10) 5.添加图书信息 (图5-1) 五、设计总结 经过这次课程设计,我认识到一门语言的学习不应该是纸上谈兵,要注重实践,只有在机器上多写程序,自己的水平才会不断发现和解决问题。要多思考,遇到问题要尽量去想清其缘由,要懂得查阅有用的资料。这次课程设计也让我学会了很多文字处理技巧,还有就是对于类的操作更加熟练,对于函数调用更加得心应手!非常
4、感谢这次课程设计的机会!通过这次课程设计,加强了我对学习java语言的热情。 现在我还是缺少练习,看程序可能看得懂。而当真正的编写程序起来就遇到困难了。虽说学java并不是传说的那么难,可不下些苦工夫是学不成的。从中我学会了很多东西,java的学习要循序渐进,不能因为学过其它基础语言而放弃对它基础的学习。 参考文献: [1]《Java 语法及网络应用设计》,徐迎晓编著,清华大学出版社 [2]《 Thinking in JAVA(Third Edition)》,Bruce Eckel,机械工业出版社 [3]《Java 2核心技术(第6版) 卷I:基础知识》,Cay S.Horstmann
5、Gary Cornell,程峰等译,机械工业出版社 [4]《Java2参考大全(第四版)》,[美]Herbert Schildt著,张玉清、吴浦峰、尚勇等译,清华大学出版社 附录(程序源代码): //java图书销售管理系统 import java.io.*; import java.util.*; class BookInfo { BookInfo() { num = -1; bookName = "No information"; author = "No information";
6、 press = "No information"; ISBN = "No information"; sold = "No"; } BookInfo( String sbn, String sa, String sp, String sISBN ) { int n = Menus.NUMBER; num = n; bookName = sbn; author = sa; press = sp;
7、 ISBN = sISBN; sold = "No"; } public void setNum( int n ) { num = n; } public void setBookName( String n ) { bookName = n; } public void setAuthor( String a ) { author = a; } public void
8、 setPress( String p) { press = p; } public void setISBN( String i ) { ISBN = i; } public void setsold( String i ) { sold = i; } public int getNum() { return num; } public String getBook
9、Name() { return bookName; } public String getAuthor() { return author; } public String getPress() { return press; } public String getISBN() { return ISBN; } public String getsold() {
10、 return sold; } public void disp() { System.out.println( getNum() + "\t" + getBookName() + "\t\t" + getAuthor() + "\t\t" + getPress() + "\t\t" + getISBN() + "\t" + getsold() ); } private int num; private String bookName;// 书名 private St
11、ring author; // 作者 private String press; // 出版社 private String ISBN; // 每本书有唯一的ISBN号码 private String sold;// 是否被售出 } class Menus { BookInfo[] numOfInfo; Scanner s = new Scanner(System.in); Menus() { numOfInfo = new BookInfo[MAX];
12、 numOfInfo[NUMBER++] = new BookInfo("Java","aaa","计算机","1782"); numOfInfo[NUMBER++] = new BookInfo("C++","bbb","软件","1632"); numOfInfo[NUMBER++] = new BookInfo("C","ccc","网络","5682"); for( int i = NUMBER; i < MAX; ++i) { n
13、umOfInfo[i] = new BookInfo(); //numOfInfo[i].disp(); } } public void mainMenu() //打印图管馆管理系统 { System.out.println( "\n**************图书销售管理系统*************" ); System.out.println( "*********************************************" ); System.o
14、ut.println( " 1.售出图书" ); System.out.println( " 2.查询图书信息" ); System.out.println( " 3.显示图书信息" ); System.out.println( " 4.删除图书信息" ); System.out.println( " 5.添加图书信息" ); System.out.println( "
15、 0.退出" ); System.out.println( "*********************************************" ); System.out.println( "*********************************************" ); System.out.print( "------请选择相应的选项:" ); int choose = -1; try { String sc
16、 = s.nextLine(); choose = Integer.parseInt(sc); System.out.println(); } catch(Exception e) { System.out.println("Enter error!"); mainMenu(); } switch(choose) { ca
17、se 1: soldMenu(); break; case 2: searchMenu(); break; case 3: dispMenu(); break; case 4: deleteMenu(); break; case 5: addMenu();
18、 break; case 0: System.exit(0); break; default: System.out.println("Enter error! Please enter a integer between 0 and 6!"); mainMenu(); } } public void addMenu() //功能1,添加图书信息 {
19、 if( NUMBER >= MAX) { System.out.println( "最多只能存储" + MAX + "本图书的信息!" ); mainMenu(); } else { int n = ++NUMBER; try { System.out.print( "请输入书名:" );
20、 String sbn = s.nextLine(); System.out.println(); System.out.print( "请输入x" ); String a = s.nextLine(); System.out.println(); System.out.print( "请输入出版社:" ); String p = s.nextLine()
21、 System.out.println(); System.out.print( "请输入ISBN号码:" ); String sISBN = s.nextLine(); System.out.println(); numOfInfo[n - 1].setNum( n ); numOfInfo[n - 1].setBookName( sbn );
22、 numOfInfo[n - 1].setAuthor( a ); numOfInfo[n - 1].setPress( p ); numOfInfo[n - 1].setISBN( sISBN ); } catch(Exception e) //异常的运用 { System.out.println("错误,请重新输入!"); --NUMBER;
23、 addMenu(); } while(true) { try { System.out.print( "--是否继续输入(y/n): " ); String sin = s.nextLine(); System.out.println();
24、 if( sin.equals("y") || sin.equals("Y")) addMenu(); else mainMenu(); break; } catch(Exception e) {
25、 System.out.println("错误,请重新输入!"); } } } } public void searchMenu() //功能2,查询图书信息 { if( NUMBER == 0) { System.out.println( "没有任何信息!" ); mainMenu(); }
26、else { System.out.println("\n-----查询图书信息:"); System.out.println("1--按序号查询"); System.out.println("2--按书名查询"); System.out.println("3--按作者查询"); System.out.println("4--按出版社查询"); System.out.println("5--按ISBN查询");
27、 System.out.println("0--返回上级菜单"); System.out.print( "------请选择相应的选项:" ); int choose = -1; try //正常输出 { String sc = s.nextLine(); choose = Integer.parseInt(sc); System.out.pr
28、intln(); } catch(Exception e) { System.out.println("Enter error!"); searchMenu(); } switch( choose ) { case 1: searchByNum();
29、 break; case 2: searchByBookName(); break; case 3: searchByAuthor(); break; case 4: searchByPress(); break;
30、 case 5: searchByISBN(); break; case 0: mainMenu(); break; default: System.out.println("Enter error! Please enter a integer between 0
31、and 5!"); searchMenu(); } } } public void searchByNum() //1——按序号查询 { int n = -1; try { System.out.print( "请输入要查询的序号:" ); String sc = s.nextLine(); n = Integer.parse
32、Int(sc); System.out.println(); } catch(Exception e) { System.out.println("Enter error!"); searchByNum(); } int i = 0; boolean exist = false; System.out.println( "序号" + "\t" + "书名" + "\t\t"
33、 + "作者" + "\t\t" + "出版社" + "\t\t" + "ISBN" + "\t\t" + "是否全部售出"); System.out.println( "-----------------------------------------------------------------------------" ); for( i = 0; i < NUMBER; ++i) { int source = numOfInfo[i].getNum(); if( sourc
34、e == n ) { numOfInfo[i].disp(); System.out.println( "-----------------------------------------------------------------------------" ); exist = true; } } if( exist == false ) System.out.pr
35、intln( "没有这个序号的信息!" ); searchMenu(); } public void searchByBookName() //2——按书名查询 { String sbn = " "; try { System.out.print( "请输入要查询的书名:" ); sbn = s.nextLine(); System.out.println(); }
36、 catch(Exception e) { System.out.println("Error!"); searchByBookName(); } int i = 0; boolean exist = false; System.out.println( "序号" + "\t" + "书名" + "\t\t" + "作者" + "\t\t" + "出版社" + "\t\t" + "ISBN" + "\t\t" + "是否全部售出");
37、 System.out.println( "-----------------------------------------------------------------------------" ); for( i = 0; i < NUMBER; ++i) { String source = numOfInfo[i].getBookName(); if( source.equals( sbn ) ) { numOf
38、Info[i].disp(); System.out.println( "-----------------------------------------------------------------------------" ); exist = true; } } if( exist == false ) System.out.println( "没有这个书名的信息!" ); searchMenu()
39、 } public void searchByAuthor() //3——按作者查询 { String sa = " "; try { System.out.print( "请输入要查询的x" ); sa = s.nextLine(); System.out.println(); } catch(Exception e) { S
40、ystem.out.println("Error!"); searchByAuthor(); } int i = 0; boolean exist = false; System.out.println( "序号" + "\t" + "书名" + "\t\t" + "作者" + "\t\t" + "出版社" + "\t\t" + "ISBN" + "\t\t" + "是否全部售出"); System.out.println( "--------------------
41、" ); for( i = 0; i < NUMBER; ++i) { String source = numOfInfo[i].getAuthor(); if( source.equals( sa ) ) { numOfInfo[i].disp(); System.out.println
42、 "-----------------------------------------------------------------------------" ); exist = true; } } if( exist == false ) System.out.println( "没有这个作者的信息!" ); searchMenu(); } public void searchByPress() //4——按出版
43、社查询 { String sp = " "; try { System.out.print( "请输入要查询的出版社:" ); sp = s.nextLine(); System.out.println(); } catch(Exception e) { System.out.println("Error!"); searchB
44、yPress(); } int i = 0; boolean exist = false; System.out.println( "序号" + "\t" + "书名" + "\t\t" + "作者" + "\t\t" + "出版社" + "\t\t" + "ISBN" + "\t\t" + "是否全部售出"); System.out.println( "-------------------------------------------------------------------------
45、" ); for( i = 0; i < NUMBER; ++i) { String source = numOfInfo[i].getPress(); if( source.equals( sp ) ) { numOfInfo[i].disp(); System.out.println( "-------------------------------------------------------
46、" ); exist = true; } } if( exist == false ) System.out.println( "没有这个出版社的信息!" ); searchMenu(); } public void searchByISBN() //5——按ISBN查询 { String sISBN = " "; try
47、 { System.out.print( "请输入要查询的ISBN:" ); sISBN = s.nextLine(); System.out.println(); } catch(Exception e) { System.out.println("Error!"); searchByISBN(); } int i = 0;
48、 boolean exist = false; System.out.println( "序号" + "\t" + "书名" + "\t\t" + "作者" + "\t\t" + "出版社" + "\t\t" + "ISBN" + "\t\t" + "是否全部售出"); System.out.println( "-----------------------------------------------------------------------------" ); for( i = 0; i < NUMBER; ++i)
49、 { String source = numOfInfo[i].getISBN(); if( source.equals( sISBN ) ) { numOfInfo[i].disp(); System.out.println( "-----------------------------------------------------------------------------" ); exis
50、t = true; } } if( exist == false ) System.out.println( "没有这个ISBN的信息!" ); searchMenu(); } public void dispMenu() //功能3,显示图书信息 { if( NUMBER == 0) { System.out.println( "没有任何信息!" );






