图书馆信息管理系统
- 格式:doc
- 大小:114.00 KB
- 文档页数:6
1、需求分析
系统以菜单方式工作,提供键盘式选择菜单以实现功能选择;图书信息采用文件保存,因而要提供文件的输入输出操作;要实现图书信息的浏览功能,则要提供信息显示操作;要实现图书信息查询功能,则要提供查找操作(提供按书名、作者名查询两种查询方式);要实现图书信息删除、修改功能则要提供文件记录的删除、修改操作。
2、总体设计
整个系统被设计为图书信息输入模块、图书信息浏览模块、图书信息查询模块和图书信息删除与修改模块。
3、详细设计
数据结构采用结构体,设计图书信息结构体:
Struct
{
Char loginNo[10]; //登录号
Char name[20]; //书名
Char author[20]; //作者名
Char classNo[10]; //分类号
Char publisher[10]; //出版单位
Char pubTime[20]; //出版时间
Float price; //价格
}bookInfo; //图书信息结构体
(1)图书信息输入模块
采用fwrite或fprintf把图书信息写入图书信息文件。
(2)图书信息浏览模块
分屏显示图书信息,每屏10条记录,按任意键显示下一屏。读文件(采用fread或fscanf)然后显示即可。
(3)图书信息查询模块
通过菜单选择查询方式,提供按书名查询和按作者名查询两种查询方式。采用基本查找算法即可。
(4)图书信息删除与修改模块
通过菜单选择删除操作,由于C语言没有提供直接删除文件记录的函数,因而需要自己实现:读记录,判断是否要删除(与输入的要删除的记录比较),如果要删除,则舍弃;否则重新写入文件。修改操作于删除操作类似,只是判断是否是要修改的记录,如果是,则把修改后的记录写入文件,否则直接写入文件。
急用!!!谢谢了!!!
发我邮箱:SunshineL1205@
积极投票可以增加您的经验值,每票1分,每天上限20分
投票备选答案 共3条
不难,就是些基本操作,写了也没什么意义,比较枯燥
20分?算了,200分可能会给你写
追问
你要是能按我们的要求做出来,给你200分又何妨???传我邮箱就好了。
能帮帮忙做出来吗????????谢谢啦!!!
回答者: jiakyonline | 六级 | 2011-5-31 11:57
投他一票
#include
#include
#include
const n=100;
int m=0;
class Book
{
private:
unsigned long no;
char name[35]; //书名
char author[20];//作者
char cbs[20]; //出版社
char key[5][20];//关键词
int onshelf; //是否再架 1:再架 2:已借
char lender[20];
unsigned long phone;
int y,m,d;
public:
void init();//初始化
friend void output();
friend void output_lend();
friend void way_1();
friend void way_2();
friend void way_3();
friend void loan();
friend void send();
};
Book p[n];
Book *k=p;
void Book::init()//初始化
{cout<<"Input the book NO!"<
cin>>no;
cout<<"Input the book name!"<
gets(name);
cout<<"Input the author!"<
gets(author);
cout<<"Input the publishing house!"<
gets(cbs);
for(int i=0;i<5;i++)
{cout<<"The "<
gets(key[i]);
cout<
}
cout<<"Iuput the status!(0 or 1)"<
cin>>onshelf;
}
void demand()//查询图书
{int choose;
cout<<"Choose which kind of inquires the way?"<
cout<<"[1]Readers can provide the book name by queries!"<
cout<<"[2]Readers can by asking book NO query!"<
cout<<"[3]Readers can provide the keyword by queries!"<
cout<<"[4] EXIT!"<
cin>>choose;
if(choose==1) way_1();
else if(choose==2) way_2();
else if(choose==3) way_3();
else return;
}
void addbook()
{char y;
for(;;)
{m++;
k->init();
k++;
cout<<"------------Are you continue?---------"<
cin>>y;
if(y=='n') break;
}
}
void output()//输出信息
{
cout<<"-----------Output the DATE!---------"<
for(int i=0;i
{cout<<"BOOK NO:"<
cout<<"BOOK NAME:"<
cout<<"AUTHOR:"<
cout<<"publishing house:"<
}
void output_lend()
{cout<<"----------Output the book had been lend!---------"<
for(int i=0;i
{if(p[i].onshelf==1)
{cout<<"BOOK NO:"<
cout<<"BOOK NAME:"<
cout<<"AUTHOR:"<
cout<<"publishing house:"<
cout<<"KEYWORD:"<
"<
cout<<"LENDER:"<
cout<<"PHONE:"<
cout<<"LEND DATE:"<
}}
void way_1()
{ char nam[35];
cout<<"-----------Input the book name !---------"<
gets(nam);
for(int i=0;i
{if(strcmp(p[i].name,nam)==0)
if(p[i].onshelf==0)
{cout<<"BOOK NO:"<
cout<<"BOOK NAME:"<
cout<<"AUTHOR:"<
cout<<"publishing house:"<
}
}
cout<<"NOT FIND!"<
}
void way_2()
{unsigned long na;
cout<<"Input the book NO !"<
cin>>na;
for(int i=0;i
{if(p[i].no==na)
if(p[i].onshelf==0)
{cout<<"BOOK NO:"<
cout<<"BOOK NAME:"<
cout<<"AUTHOR:"<
cout<<"publishing house:"<
}
}
cout<<"Input error!"<
}
void way_3()
{char keyword[30];
cout<<"------------Input the keyword !-------------"<