图书馆管理系统设计(C语言)Word文件下载.doc
《图书馆管理系统设计(C语言)Word文件下载.doc》由会员分享,可在线阅读,更多相关《图书馆管理系统设计(C语言)Word文件下载.doc(32页珍藏版)》请在冰豆网上搜索。
![图书馆管理系统设计(C语言)Word文件下载.doc](https://file1.bdocx.com/fileroot1/2022-10/19/62a2221d-eaa0-4e25-b659-035a9fead7ff/62a2221d-eaa0-4e25-b659-035a9fead7ff1.gif)
(3)学生信息修改使用系统提供的查找功能可以迅速的找到要修改的学生,并提示修改的信息。
2 图书信息管理
图书信息包括:
图书ID,图书名字,图书作者,在馆状态。
(1) 新书入库
需要填入图书ID,图书名字,图书作者,在馆状态;
其中在馆状态需要填:
true,表示图书在馆。
(2) 旧书删除
对不用的旧书可以执行该操作。
可以使用系统提供的查找符合条件的图书,并可以同步显示该图书的信息,以便确认所删图书的正确性。
(3) 图书信息修改
当图书的信息发生改变的时候可以使用该功能来更新图书的信息,以保证图书信息的正确性。
操作是只要用系统提供的查找功能找到该图书,就可以在信息显示栏中对图书信息做修改。
3 图书借阅管理:
图书借阅信息包括:
借阅号,图书ID,学生ID,是否借出,借出日期,是否归还,归还日期。
(1) 图书借阅:
需要图书ID,学生ID。
(2) 图书归还:
4 查询报表
(1) 图书信息查询:
可以按照图书ID,图书名字,图书作者实现查询。
(2) 借/还纪录查询
借,还图书信息都可以按照图书ID,学生ID,日期范围灵活的查询。
(3) 未还图书查询
查询可以按照图书ID,学生ID,班级,院系进行,从而可以方便的进行分组管理。
2功能设计
2.1算法设计
本系统需要实现的功能要求:
利用switch语句设计如图1所示的主菜单:
请输入选项编号(1~10)
图书菜单
1—添加图书
2-图书查寻
3-删除一本图书资料
4-借书
5-还书
6-退出系统
会员菜单
7-添加会员
8-会员查询
9-删除一个会员资料
10-查询某个会员所借图书情况
图1图书管理系统主菜单
2、选择5后,调用还书函数,进入函数后利用switch语句实现一个如图2所示的菜单,该菜单中每个选项调用一个函数
还书菜单
请输入选项编号(1~4)
1――输入图书名
2――查询图书资料
3――图书已借出的判断
4――作图书未借书标志,表示已还书
图2还书子菜单
部分模块流程图:
程序开始
程序结束
循环操作
查找进行操作的对象
确认所选操作的对象,进行操作
学生管理
还书
借书
信息修改
删除学生
加入学生
旧书删除
新书入库
退出系统
关于
查询报表
借/还管理
图书管理
图书信息查询
未还图书查询
借/还纪录查询
系统信息
确认退出
3程序代码设计
1初始化界面模块
1)函数原型:
voidMenu()
2)功能:
初始化界面
3)变量及类型:
voidRedText(intx,inty,char*z):
定义整形变量
{
system("
cls"
);
/*调用系统的清屏命令*/
textbackground(BLUE);
/*将背景设置为蓝色*/
window(1,1,25,80);
clrscr();
textx=3;
/*光标初始化位置*/
texty=2;
gotoxy(1,2);
printf("
%c"
218);
/*画左上角*/
for(i=0;
i<
78;
i++)
196);
/*画水平直线*/
191);
/*画右上角*/
for(i=3;
=23;
{
gotoxy(1,i);
printf("
179);
/*画垂直线*/
gotoxy(80,i);
}
192);
/*画左下角*/
217);
/*画右下角*/
gotoxy(1,1);
textcolor(7);
/*设置灰色*/
80;
cprintf("
219);
/*用符号实现画主菜单的灰色背景区*/
Selectitem();
/*调用选项函数*/
DrawSelectitem();
/*画选项*/
gettext(2,3,78,23,c);
/*保存当前文本区域*/
}
4)说明:
进入系统后自动驱动初始化界面
2具体操作过程模块
voidRun()
利用while,for等循环语句和if等判断语句,实现具体的图书管理的过程如,借书、还书等过程。
3)变量及类型:
voidDrawFrame(intl,intu,intr,intd,inttcolor,intbcolor)
textbackground(bcolor);
/*背景颜色*/
textcolor(bcolor);
/*文本颜色*/
for(i=l;
=r;
i++)/*输出背景区域*/
for(j=u;
j<
=d;
j++)
{
gotoxy(i,j);
printf("
/*输出背景字符*/
}
textcolor(tcolor);
/*边框颜色*/
for(i=u+1;
d;
i++)/*在背景区域内输出边框线*/
gotoxy(l,i);
/*垂直线*/
gotoxy(r,i);
for(i=l+1;
r;
gotoxy(i,u);
/*水平线*/
gotoxy(i,d);
gotoxy(l,u);
cprintf("
/*左上角*/
gotoxy(r,u);
/*右上角*/
gotoxy(l,d);
/*左下角*/
gotoxy(r,d);
/*右下角*/
/*gettext(l+1,u+1,r-1,d-1,save1);
*//*保存边框内区域*/
}
4)说明:
以大量的函数,实现图书管理的主要过程,包括对用户的管理、对图书的管理、对借阅的管理。
4.C程序设计总结
1.程序调试基本正常,基本达到图书管理要求,调试之处游少数错误,经过修改基本上已经可以正常使用了。
2.本人在程序设计感到,充分的利用网上的资源和手中的源代码及借鉴他人的经验可以更加的解决困难,使程序达到要求。
参考文献
[1]谭浩强,C程序设计(第二版),北京:
清华大学出版社,2001.1
[2]陈朔鹰,C语言程序设计习题集,北京:
人命邮电出版社,2003.6
附录:
程序清单
#include<
dos.h>
bios.h>
conio.h>
stdio.h>
stdlib.h>
math.h>
string.h>
#defineLEFT0x4b00/*左*/
#defineRIGHT0x4d00/*右*/
#defineDOWN0x5000/*下*/
#defineUP0x4800/*上*/
#defineSPACE0x3920/*空格*/
#defineESC0x011b/*ESC键*/
#defineENTER0x1c0d/*回车键*/
#defineBackspace0xe08/*擦除键*/
#defineALT_B12288/*组合键ALT_B*/
#defineALT_M12800/*组合键ALT_M*/
#defineALT_H8960/*组合键ALT_H*/
intkey;
/*按键变量*/
inttextx,texty;
/*光标坐标,x行,y列*/
structmenustruct/*菜单用的结构体*/
charname[10];
/*主菜单名*/
charstr[10][20];
/*选项*/
intn;
/*选项数*/
}ml[3];
/*使用了3个,可根据需要增删*/
typedefstructBookList/*书的结构体*/
charnum[20];
/*图书编号*/
charname[20];
/*书名*/
intprice;
/*书的价格*/
charperson[20];
/*借阅人*/
intyes;
/*判断书是否存在或者已经借出,1存在,0借出*/
structBookList*next;
}Book;
typedefstructMemberList/*会员的结构体*/
/*会员的姓名*/
charsex[2];
/*会员的性别*/
intage;
/*会员的年龄*/
structMemberList*next