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