- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于C语言的图形用户界面图书管理系统含源代码
综合实验程序:图书管理系统设计
实验目的及内容
参考学校图书馆管理系统,完成一套简单的图书及读者管理系统,实
现图书信息管理、读者查询、借阅管理等。
实验要求
主界面参考图1。系统以图形化菜单方式工作,即用户通过选取相应的菜单项进入相关的功能模块。
(2)图书管理信息包括:图书名称、图书编号、单价、作者、借阅状态(已
借、未借出)、读者(即借书人)姓名、学号等。
(3)功能包括:
??新进图书基本信息的输入
??图书基本信息的查询
??对撤消图书信息的删除
??为读者(即借书人)办理注册,即添加读者
??查询:所有图书信息查询、所有读者信息查询
??办理借书手续:即修改书籍的借阅状态,添加读者的信息等
??办理还书手续:即修改书籍的借阅状态,删除读者的信息等
(4)要求使用二进制文件方式存储数据。
(5)要求使用链表组织、管理图书信息。
?系统设计方案
本实验分主函数与调用函数,主函数先进行界面设计,主函数框架设计(界面与函数的结合,响应相应按键对程序操作,能形成统一模块框架),调用函数框架设计,最后进行子函数设计,对主函数进行填充。
?系统结构图
头文件部分调用相应头文件,对按键进行宏定义
主函数
{1. while(ot)
{界面设计调用
while(key!=Esc)
{ if(key==Down)
if((key==Right||key==Enter)i=1i=5)
{ 子菜单调用
while(1)
{ if(key==Down||key==Up)
if(key==Left||key==Esc)
if(key==Enter)
/*其中有
Add1():添加读者
Add2();添加图书
printAll1():读者打印
printAll2():图书打印
search1():读者查询
search2():读书查询
shanchu1():读者删除
shanchu2():图书删除:
borrow(1):借书
borrow(2);还书
help():使用说明
save():二进制存盘*/
}
}
if((key==Enter)i=6i=7)
if((key==Enter)i==8){ot=0;jk=0;}
if(jk==0) break;
key=get_key();
}
if(key==Esc) break;
}
}
?用户使用手册
1.进入第一级菜单
可响应上下键,Esc键,按Esc退出,有””标志的项目可按Enter或者Right键进入二级菜单
二级菜单同样可响应上下键操作,按Left或者Esc键回到一级菜单,按Enter则进入二级菜单相应功能部分
进入功能部分则按提示进行操作
实验步骤及核心代码
要求:(1)代码少于100行的程序,附上全部源代码;多于100行的,附上核心源代码,要求有功能概要说明;
(2)源代码格式要求:五号字体,Times New Roman字体
#include stdio.h
#include conio.h
#include bios.h
#includestdlib.h /*动态分配*/
#includestring.h /*strcmp(a1,a2); strcpy();*/
#includeconio.h
/*界面设计宏定义*/
#define x1 10
#define y1 10
#define w 20
#define r 8
#define x2 30
#define w2 20
#define Left 0x4B00
#define Right 0x4D00
#define Up 0x4800
#define Down 0x5000
#define Esc 27
#define Enter 13
char T1[10]=NULL;
char T2[10]=YES;
char T3[10]=NO;
/*键盘消息*/
typedef union
{ int word;
char byte;
}keycode;
int get_key()
{
keycode key;
key.word=bioskey(0);
return key.byte?key.byte:key.word;
}
/*结构体声明*/
typedef struct STUDENT /*定义*/
{
char ID[10];
char name[20];
struct ST
文档评论(0)