文档库 最新最全的文档下载
当前位置:文档库 › 数据结构课程设计报告图书管理系统

数据结构课程设计报告图书管理系统

数据结构课程设计报告图书管理系统
数据结构课程设计报告图书管理系统

数据结构课程设计报告图

书管理系统

Revised by Jack on December 14,2020

课程设计报告课设课题:课程设计——图书管理系统

学院:电子信息学院

专业:网络工程

姓名:

班级学号: BX1213

指导教师:张艳

报告日期:

目录

一、需求分析 (1)

系统开发背景和意义 (1)

设计题目与要求 (1)

二、总体结构设计 (2)

三、各子模块设计 (3)

初始化图书信息 (3)

系统主界面 (3)

采编入库 (4)

输入读者信息 (4)

借阅图书 (4)

归还图书 (6)

查询图书信息 (7)

查询读者信息 (7)

四、程序设计调试情况分析 (9)

五、测试结果 (12)

欢迎界面 (12)

初始化图书信息 (12)

系统主界面 (13)

采编入库 (13)

输入读者信息 (14)

借阅图书 (15)

归还图书 (16)

查询图书信息 (16)

查询读者信息 (17)

保存文件,退出 (18)

六、总结 (19)

七、参考文献 (20)

八、附录(源代码) (21)

一、需求分析

系统开发背景和意义

图书管理作为计算机应用的一个分支,有着手工管理无法比拟的优点,如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高图书管理的效率。因此,开发一套能够为用户提供充足的信息和快捷的查询手段的图书管理系统,将是非常必要的,也是十分及时的。

图书管理系统需要满足来自图书馆工作人员、普通用户和借阅者三方面人员的需求。图书馆工作人员对图书借阅者的借阅及还书要求进行操作,同时还可通过图书编号等查询相应的借阅情况;普通用户的需求是查询图书馆所存的图书的相关情况;图书借阅者的需求是查看自己的相关信息及查询自己的借阅情况。

设计题目与要求

【问题描述】

设计一个计算机管理系统完成图书管理基本业务。

【基本要求】

1) 每种书的登记内容包括书号、书名、着作者、现存量和库存量;

2) 对书号建立索引表(线性表)以提高查找效率;

3) 系统主要功能如下:

*采编入库:新购一种书,确定书号后,登记到图书帐目表中,如果表中已有,则只将库存量增加;

*借阅:如果一种书的现存量大于0,则借出一本,登记借阅者的书证号和归还期限,改变现存量;

*归还:注销对借阅者的登记,改变该书的现存量。

二、总体结构设计

有八个模块

1) 图书初始化

输入图书的一些信息,编号、作者、书名、数量,使有一定的库存。

2) 新书入库

新书采编入库,输入编号后如果有次数只需输入数量,没有则继续输入书名、作者、数量。

3) 添加读者信息

读者信息初始化,输入读书证号和姓名,只有输入书证号和姓名才能进行借书还书

4) 借书模块

读者输入读书证号,证号存在输入要借的图书编号,不能借同一本书,如果借书数量以达到最大也不能借书。

5) 还书模块

归还已借的图书,要先输入读者书证号,书证号存在继续输入要还的图书编号,图书编号存在并且借来此书,归还成功。

6) 查询图书信息

7) 查询读者信息

可查询读者姓名书证号,借了几本书,都是什么书和还书日期,还可以借几本书。

8) 退出

退出读书管理系统并保存读者和图书信息。

系统主界面

初始化之后,进入系统,显示功能列表,可选择任意系统,但在借书之前先要输入读者信息。

采编入库

选择采编入库的功能后,先输入图书编号判断是否存在,若存在,则在原有记录上加上添加的图书数量;若不存在,则加入新的记录。

输入读者信息

选择读者登记后,输入读者编号跟姓名。

借阅图书

选择借阅图书功能后,输入读者证号,判断该读者是否存在,若存在则输入借阅图书的编号,判断该图书编号是否存在,若存在,则判断读者借阅的图

书数量是否满了和是否借阅了相同的书籍,判断成功后,则输入归还该图书的日期,该图书现有量减一,借阅成功;若读者不存在则返回。

判断读者是

看是否还有此图

看读者的借书

看读者是否

归还图书

实现归还图书功能时,首先输入读者编号,并判断是否存在,若不存在就按任意键返回,;若存在输入归还的图书编号并判断是否存在,若归还图书编号不存在,则返回。存在后,将读者借阅该图书的信息清空,该图书的现有量加一。最后按任意键返回

查询图书信息

查询图书信息时,输入图书的编号,判断是否存在。不存在则返回;存在则输出图书的编号,书名,作者,现有量,跟库存量。

判断图书信

查询读者信息

查询读者信息时,首先判断读者的编号是否存在,不存在就按任意键返

回。若存在,则输出读者的证号,姓名,和借阅的图书编码及其还书日期。

四、程序设计调试情况分析

在整个课程设计中,我们遇到了许多的问题。有些问题吧,我们在苦思冥想的时候,突然我们的编译器显示出了正确的结果,当我们欣喜若狂的在运行下一次的时候又会出现相同的问题,在借阅的过程中,在一个读者借阅了两本书以上的时候,上一本书的归还日期上还有下一本书上的编号,最后一本书输出的才是正确的结果。下图是借阅了两本书的截图:

图4-1

看到这里我们也知道是第一本书的还书日期的地址空间跟第二本书的编号连接在了一起导致输出的时候一直到第二本书编号的的字符串后面的‘/0’结束。最后发现是我们在定义还书日期这个字符串的时候开辟的空间太小。我们把char limit_date[8];改为char limit_date[10]就好了。

图4-2

判断读者信息

五、测试结果

欢迎界面

程序运行显示“欢迎使用图书管理系统”,按任意键进入到主菜单如图5-1所示。

图5-1 欢迎界面

初始化图书信息

在没有文件的时候会进入到初始化界面,需要输入一本图书的相关信息,如图5-2所示。

图5-2 初始化图书信息

系统主界面

接着进入的系统的主菜单,如图5-3所示。

图5-3 系统主界面

采编入库

实现采编入库功能按照系统提示输入信息。如图5-4。如果该图书已存在,则直接输入图书的数量如图5-5所示。

图5-4 采编入库(书不存在)

图5-5 采编入库(书已存在)

输入读者信息

按照要求输入读者信息,如图5-6所示。

图5-6 输入读者信息

借阅图书

按照要求先输入读者证号,在输入借阅的图书编号如图5-7所示。如果读者已经借阅了一本书之后不能借阅同一本图书如图5-8所示。

图5-7 借阅图书

图5-8 同一个读者不能借阅同一本图书

归还图书

归还图书的要求按着图5-9输入即可。

图5-9 归还图书

查询图书信息

图5-10 是没有借阅之前的图书的相关信息,图5-11是读者借阅了图书之后的信息,只改变了现有量。

图5-10 借阅登记后

图5-11 归还图书后

查询读者信息

查询读者的信息时,会输出相关借阅的图书编号以及还书日期如图5-12,5-13所示。

图5-12 查询读者信息(一)

图5-13 查询读者信息(二)

保存文件,退出

在系统的主菜单后,按‘0 ’功能保存并退出系统。

图5-14 文件保存

六、总结

个人觉得课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程. 在生活中可以说得是无处不在。因此作为新世纪的大学来说能够分析,并解决程序中出现的问题是十分重要的。课程设计就能体现到这一方面。能够将你所学到的理论跟实际结合在一起。

通过本次课程设计感慨良多。从课堂上听到的到课后应用到的根本就不是一回事。课堂上,老师在上面说,自己在下面听,到也能听懂。可是到了应用上,自己倒也是知道要用到哪方面的内容,但是偏偏不知道从何处下手;好不容易写好的一小段代码,还要跟其他功能不相冲突,这又需要我们自己去想办法去兼容好他们。通过本次课程设计试我懂得理论要跟实践相结合。正所谓“台上十分钟,台下十年功”,别人在台上表演了十分钟,你觉得很容易,可那里知道别人在下面做的努力呢。同样的,我们在课堂上听老师讲确实觉得是那么回事,但是真正做下去,也只有自己知道是何种滋味。理论始终是理论,不能都熟练应用自己所学到的知识,到头来也是一场空。

在这次的课程设计过程中,我们也遇到了不能解决的难题,比如说在读者查询的时候,第二个读者始终会覆盖第一个读者的数据。我们始终没有搞明白问题的所在,只知道不是在输出读者信息的问题,应该是添加读者过程中指针始终指在第一个地址,没有移动。我们按照查询图书的函数重新编写了一次还是同样问题。一直到答辩前一天晚上还没有解决,之后只能放弃。还有在最开始的时候我们的程序功能并没有

清屏功能,整个界面看起来并不是那么整洁。于是我用用getch();system(“cls”);来进行清屏,最后会出先一个小问题,在我们查询了一些资料后,又再次基础上加上了goto end;这个函数来加以完善。

这次课程设计,我们也遇到了很多问题,比如说,我们再输入第二个读者的信息后会覆盖第一个读者的信息,想了半天没有弄懂是哪里错了,最后才看出来我们定义的结构体指针没有移动,导致我们输入的读者信息一直存放在同一个地址中。也有些不懂需要在网上查询的代码,组员之间相互配合,不懂就询问其他同学或者查询资料亦或者自己去弄懂问题的根结,团结协作的精神在这次课程设计中表现的淋漓尽致。我们不仅将以前的知识复习一遍;同时也弄懂了一些平常自己似懂非懂的;最后同学之间的友谊也慢慢变的深厚起来

小组分工:

孙泽铭:采编入库、查询图书信息、查询读者信息

黄响:添加读者、借阅图书、归还图书

七、参考文献

[1]严蔚敏吴伟民编着《数据结构》清华大学出版社,2000

[2]黄国瑜叶乃菁编着《数据结构》清华大学出版社,2001

[3]胡学钢编着《数据结构算法设计指导》清华大学出版社,1999

[4]王士元编着《数据结构与数据库系统》南开大学出版社,2000

[5]李强根主编《数据结构(C++描述)》中国水利水电出版社,2001

[6]杨正宏编着《数据结构》中国铁道出版社,2002

[7]胡学钢编着《数据结构算法设计指导》清华大学出版社,1999

[8]殷人昆徐孝凯编着《数据结构习题解析》清华大学出版社,2002

[9]李春葆编着《数据结构习题与解析》清华大学出版社,2001

[10] 咨讯教育小组编着《数据结构数据结构版》中国铁道出版社,2002

八、附录(源代码)

#include<>

#include <>

#include <>

#include<>

#define Max 4

typedef struct book

{

char book_num[10];

char book_name[20];

char book_writer[10];

int book_xy;

int book_kc;

int n;

struct book *next;

}BK;

typedef struct borrow

{

char borrow_book_num[10];

char limit_date[10];

}BO;

typedef struct reader

{

char reader_num[10];

char reader_name[10];

int right;

int m;

BO borrow[Max];

struct reader *next;

}RD;

BK *h_book;

RD *h_reader;

int n=0;

int m=0;

void Login();

int Menu();

void Init();

void Menu_select();

void Insert_New_Book();

void add_reader();

void Print_reader();

void Print_book();

void Borrow_Book();

void Return_Book();

void Save();

void Save_Book();

void Save_Reader();

void Load();

void Load_Reader();

void Load_Book();

void Login()

{

system("cls");

printf("\n\n\n\t\t***************************************\n");

printf("\n\n\n\t\t** 欢迎使用图书管理系统 **\n");

printf("\n\n\n\t\t***************************************\n");

printf("\n\n\n\t\t 按任意键进入系统...");

getch();

system("cls");

}

int Menu() /*主菜单*/

{

int dm;

printf("\n\t\t图书管理系统主菜单\n");

printf("=================================================\n ");

printf("*\t1----采编入库 \n");

printf("*\t2----登记读者 \n");

printf("*\t3----借阅登记 \n");

printf("*\t4----还书管理 \n");

printf("*\t5----查询图书信息 \n");

printf("*\t6----查询读者信息 \n");

printf("*\t0----退出系统 \n");

printf("=================================================\n ");

printf("请选择相应的代码:");

for(;;)

{

scanf("%d",&dm); \n包括编号.书名.数量..\n");

p0=(BK*)malloc(sizeof(BK));

h_book=p0;

printf("\n请输入图书信息:\n");

printf("图书编号:"); /*输入图书编号(唯一)*/

scanf("%s",p0->book_num);

printf("图书名称:"); /*输入图书名称*/

scanf("%s",p0->book_name);

printf("图书作者:"); /*输入图书作者*/

scanf("%s",p0->book_writer);

printf("图书数量:"); /*输入图书数量*/

scanf("%d",&p0->book_kc);

p0->book_xy=p0->book_kc; /*开始时图书现有量和库存量相等*/

p0->next=NULL;

p0->n=++n;

printf("\n图书信息初始化完毕!按任意键继续下一步操作..\n");

getch();

system("cls");

}

void Insert_New_Book()/*新书入库*/

{

BK *p,*p0,*p1;

p=p1=h_book;

printf("\n新书入库模块...\n");

printf("\n请输入新书信息..\n包括书号.书名.数量..\n");

p0=(BK *)malloc(sizeof(BK));

printf("图书编号:");

scanf("%s",p0->book_num);

while(strcmp(p0->book_num,p1->book_num)!=0&&p1->next!=NULL) p1=p1->next;

if(strcmp(p0->book_num,p1->book_num)==0) /*此处分两种情况,若图书编号存在,则直接进库,只须输入书的数量*/

{

printf("\n此编号图书已存在!!直接入库!\n");

printf("图书数量:");

scanf("%d",&p0->book_kc);

p1->book_kc+=p0->book_kc;

p1->book_xy+=p0->book_kc;

}

else/*若不存在,则需要输入其他的信息,然后在进行插入操作*/

{

printf("图书名称:");

scanf("%s",p0->book_name);

printf("图书作者:");

scanf("%s",p0->book_writer);

printf("图书数量:");

scanf("%d",&p0->book_kc);\n");

getch();

system("cls");

}

void add_reader()/*添加读者*/

{

RD *p0;

int i;

printf("\n读者初始化开始,请输入读者信息..\n包括书证号.姓名..\n");

p0=(RD*)malloc(sizeof(RD)); /*申请新结点存储空间*/

h_reader=p0;

printf("\n请输入读者的信息:\n");

printf("读者书证号:");

scanf("%s",p0->reader_num);

printf("读者姓名:");

scanf("%s",p0->reader_name);

p0->right=0;

for(i=0;i

{

strcpy(p0->borrow[i].borrow_book_num,"0"); /*所借图书直接置为(即没有借书)*/

strcpy(p0->borrow[i].limit_date,"0");

}

p0->next=NULL;

p0->m=++m;

printf("\n读者信息初始化完毕!按任意键继续下一步操作..\n");

getch();

system("cls");

}

void Borrow_Book() /*借书模块*/

{

BK *p0; RD *p1;

char bo_num[10],rea_num[10],lim_date[8];

int i;

p0=h_book; p1=h_reader;

printf("\n借书模块...\n");

printf("\n请输入借书的读者书证号:");

scanf("%s",rea_num);

while(p1->next!=NULL&&strcmp(rea_num,p1->reader_num)!=0)

p1=p1->next;

if(p1->next==NULL&&strcmp(rea_num,p1->reader_num)!=0)

{

printf("\n此读者编号不存在!按任意键返回..\n");

goto END;

}

printf("\n请输入你要借的书的编号:");

scanf("%s",bo_num);

while(strcmp(bo_num,p0->book_num)!=0&&p0->next!=NULL)

p0=p0->next;

if(p0->next==NULL&&strcmp(bo_num,p0->book_num)!=0)

图书馆管理信息系统分析报告47698

1.需求分析 1.1使用围 在学校图书馆部的现有局域网这个网络环境下,信息由各用户在规定的权限下在各自的工作站上录入,信息上网后各用户可查询,调用,达到信息共享。 1.2背景 图书馆在正常运营中面对大量书籍、读者信息以及两者间相互联系产生的借书信息、还书信息。现有的人工记录方法既效率低又错误过多,大大影响了图书馆的正常管理工作。因此需要对书籍资源、读者资源、借书信息、还书信息进行管理,及时了解各个环节息的变更,有利用管理效率的提高。 图书馆管理信息系统是图书馆的支持系统,当前设计应满足以下需求: (1)图书馆将图书借给读者,读者和图书都必须在系统中注册。 (2)系统通过设置和密码控制用户访问,读者和管理员可修改自已的密码。 (3)图书馆负责购买图书,对于流行的书一般要多买几本,如果图书破旧或过期则可以从图书系统中删除。 (4)图书馆管理员负责与读者打交道,他们的工作要得到系统的支持。 (5)借书者可以事先通过网络预约要借的图书,然后到管理员处办理正式借书手续。 (6)图书借出有时间限限制,一旦超期,管理员应及时通知借书者归还图书。 (7)图书馆可以方便地产生、更新和删除系统中与书目、借书者、借书记录和预约记录等信息。 (8)系统能够运行在Windows系统下,用户可通过局域网操作,还应该有一个非常好的图形用户界面(GUI) (9)系统应该具有很好的可扩展性。 1.3功能分析 三个功能模块: (1)读者管理 ①办证:新生将个人信息提交到办证处,办证处和新生信息表核对,正确则可办证,将个人信息保存到读者信息表,同时生成图书借阅表,发出领证通知单,不符合则发出拒绝申请单。 ②注销:读者提交注销申请表,办证处调用读者信息表,查找该读者信息。若存在且信息一致,则在读者信息表中将该读者信息删除,同时删除借阅信息表;若信息不存在或与提交信息不一致,则发出拒绝申请单。 ③挂失补办借书证:读者提出挂失补办申请表,办证处核对信息,若信息不一致,则发出拒绝申请单;若信息一致,修改读者信息表,办理补办业务,发放领证通知单。 (2)借还书管理 ①借书:读者提交借阅申请表,管理员先调用读者信息表和读者的借阅信息表,审核该读者是否有权限借阅图书。若无权限,则发出拒绝申请表;若有权限,管理员再调用图书信息表,查找读者所申请借阅的图书信息,若可借,则发出领书通知单,待读者获得图书后,将信息存入其借阅信息表;若不可借,则发出拒绝申请表。

数据结构课程设计

1.一元稀疏多项式计算器 [问题描述] 设计一个一元稀疏多项式简单计算器。 [基本要求] 输入并建立多项式; 输出多项式,输出形式为整数序列:n, c1, e1, c2, e2,……, cn, en ,其中n是多项式的项数,ci, ei分别是第i项的系数和指数,序列按指数降序排序; 多项式a和b相加,建立多项式a+b; 多项式a和b相减,建立多项式a-b; [测试数据] (2x+5x8-3.1x11)+(7-5x8+11x9)=(-3.1x11+11x9+2x+7) (6x-3-x+4.4x2-1.2x9)-(-6x-3+5.4x2-x2+7.8x15)=(-7.8x15-1.2x9-x+12x-3) (1+x+x2+x3+x4+x5)+(-x3-x4)=(x5+x2+x+1) (x+x3)+(-x-x3)=0 (x+x2+x3)+0=(x3+x2+x) [实现提示] 用带头结点的单链表存储多项式,多项式的项数存放在头结点中。 2.背包问题的求解 [问题描述] 假设有一个能装入总体积为T的背包和n件体积分别为w1, w2, …,wn的物品,能否从n件物品中挑选若干件恰好装满背包,即使w1+w2+…+wn=T,要求找出所有满足上述条件的解。例如:当T=10,各件物品的体积为{1,8,4,3,5,2}时,可找到下列4组解:(1,4,3,2)、(1,4,5)、(8,2)、(3,5,2) [实现提示] 可利用回溯法的设计思想来解决背包问题。首先,将物品排成一列,然后顺序选取物品转入背包,假设已选取了前i件物品之后背包还没有装满,则继续选取第i+1件物品,若该件物品“太大”不能装入,则弃之而继续选取下一件,直至背包装满为止。但如果在剩余的物品中找不到合适的物品以填满背包,则说明“刚刚”装入背包的那件物品“不合适”,应将它取出“弃之一边”,继续再从“它之后”的物品中选取,如此重复,直至求得满足条件的解,或者无解。 由于回溯求解的规则是“后进先出”因此自然要用到栈。 3.完全二叉树判断 用一个二叉链表存储的二叉树,判断其是否是完全二叉树。 4.最小生成树求解(1人) 任意创建一个图,利用克鲁斯卡尔算法,求出该图的最小生成树。 5.最小生成树求解(1人) 任意创建一个图,利用普里姆算法,求出该图的最小生成树。 6.树状显示二叉树 编写函数displaytree(二叉树的根指针,数据值宽度,屏幕的宽度)输出树的直观示意图。输出的二叉树是垂直打印的,同层的节点在同一行上。 [问题描述] 假设数据宽度datawidth=2,而屏幕宽度screenwidth为64=26,假设节点的输出位置用 (层号,须打印的空格数)来界定。 第0层:根在(0,32)处输出;

图书馆管理系统课程设计报告.doc

图书馆管理系统设计报告 一、实习题目:图书馆管理系统 二、实习工具:前台开发工具选择Visual Basic 6.0;后台数据库选择Access;中间层采用ADO数据访问技术,将对数据库的操作以类的形式封装。 三、实习目的:通过建立一个图书馆管理系统来管理图书。掌握Visual Basic 的语言特点和编程技巧,熟悉控件的属性、事件和方法。掌握用ADO控件访问数据库的技术,实现在数据库中的添加、查询和删除等操作。 四、实习内容: 1)需求分析:在进行一个项目的设计之前,先要进行必要的需求分析。图书馆信息系统要求完成如下基本功能: ?可以实现图书的类别管理和图书的信息管理。对图书的各种信息的查询,包括逐个浏览,以及对图书信息的增加、删除和修改操作。另外,可以根据输入的信息来检索某个图书的信息。 ?可以实现读者的类别管理和读者的信息管理。对读者的各种信息的查询,包括逐个浏览,以及对读者信息的增加、删除和修改操作。另外,可以根据输入的信息来检索某个读者的信息。 ?可以实现图书借阅管理。包括借书信息、还书信息以及相关信息的查询。 ?可以实现对系统管理。 2)结构设计:根据上面的需求分析,开发设计不同的窗体系统,每一个窗体实现不同的功能,可以设计下面的几个模块。 ?图书管理模块:用来实现图书类别和信息管理。 ?读者管理模块:用来实现读者类别和信息管理。 ?图书借阅管理模块:用来实现借书和还书管理。 ?系统管理模块:用来实现用户的增加和修改等操作。 系统功能模块图如下: 3)

这里的数据库采用Access,用ADO作为连接数据对象。 设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。数据库设计一般包括如下几个步骤: ?数据库需要分析。 ?数据库概念结构设计。 ?数据库逻辑结构设计。 数据库需求分析 用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入,收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后而后具体设计打下基础。 数据库逻辑结构设计 逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图,转换为与选用的具体机器上的DBMS产品所支持的数据模型相符合的逻辑结构。 E-R图向关系模型转换的结果如下所示: 读者类别表(种类编号、读者种类、借书数量、借书期限、有效期限)。 读者信息表(读者编号、读者姓名、读者种类)。 图书类别表(类别编号、类别名称)。 图书信息表(图书编号、图书名称、图书类别、作者姓名、出版社名称、出版日期、价格、登记日期)。 借书信息表(图书编号、图书名称、图书作者、图书类别、出版社)。 4)实现代码:(类似代码略) 主窗体代码:在本项目中,子菜单事件都是Click事件,这里先给出主窗体部分的代码。 下面是响应“添加图书类别”子菜单Click事件,调出添加图书类别窗体代码。 Private Sub tjts_Click() 添加图书类别.Show End Sub 下面是响应“添加读者信息”子菜单Click事件,调出添加读者信息窗体代码。 Private Sub tjdx_Click()

数据结构课程设计报告模板

《数据结构I》三级项目报告 大连东软信息学院 电子工程系 ××××年××月

三级项目报告注意事项 1. 按照项目要求书写项目报告,条理清晰,数据准确; 2. 项目报告严禁抄袭,如发现抄袭的情况,则抄袭者与被抄袭者均 以0分计; 3. 课程结束后报告上交教师,并进行考核与存档。 三级项目报告格式规范 1. 正文:宋体,小四号,首行缩进2字符,1.5倍行距,段前段后 各0行; 2. 图表:居中,图名用五号字,中文用宋体,英文用“Times New Roman”,位于图表下方,须全文统一。

目录 一项目设计方案 (3) 二项目设计分析 (4) 三项目设计成果 (4) 四项目创新创业 (5) 五项目展望 (6) 附录一:项目成员 (6) 附录二:相关代码、电路图等 (6)

一项目设计方案 1、项目名称: 垃圾回收 2、项目要求及系统基本功能: 1)利用数据结构的知识独立完成一个应用系统设计 2)程序正常运行,能够实现基本的数据增加、删除、修改、查询等功能3)体现程序实现算法复杂度优化 4)体现程序的健壮性 二项目设计分析 1、系统预期实现基本功能: (结合本系统预期具体实现,描述出对应基本要求(增、删、改、查等)的具体功能) 1. 2. 3. 4. 5. 6. 7. 2、项目模块功能描述 (基本分为组织实施组织、程序功能模块编写、系统说明撰写等。其中程序功能子模块实现) 模块一: 主要任务:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 模块二: 主要任务:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 模块n: 主要任务:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

图书管理系统分析报告

图书管理系统分析 报告

图书管理系统分析报告 大连民族学院 版本变更历史(Version Change History) 目录 1. 引言(Introduction) ................................................ 错误!未定义书签。 1.1 编写目的(Purpose)....................................... 错误!未定义书签。 1.2 读者对象(Reader)......................................... 错误!未定义书签。 1.3 编写原则(Rule)............................................. 错误!未定义书签。 1.4 定义(Definitions) .......................................... 错误!未定义书签。 2. 任务概述(Task Description) .................................. 错误!未定义书签。 3. 业务需求调查(Business Processes and Flows)...... 错误!未定义书签。 3.1 组织结构调查.................................................... 错误!未定义书签。

3.2 应用现状调查.................................................... 错误!未定义书签。 3.3 业务处理总体流程调查 .................................... 错误!未定义书签。 3.3.1 总体流程图 .............................................. 错误!未定义书签。 3.3.2 业务处理环节定义及处理说明 ............... 错误!未定义书签。 3.4 子系统处理流程调查 ........................................ 错误!未定义书签。 3.4.1 基础算法教学业务需求调查................... 错误!未定义书签。 3.4.2 运筹学生产应用系统业务需求调查 ....... 错误!未定义书签。 3.5 对新系统的环境要求调查 ................................ 错误!未定义书签。 3.5.1 基本要求 .................................................. 错误!未定义书签。 3.5.2 硬件要求 .................................................. 错误!未定义书签。 3.5.3 软件要求 .................................................. 错误!未定义书签。 4. 系统分析.................................................................... 错误!未定义书签。 4.1 国内外同类系统或产品的比较分析................. 错误!未定义书签。 4.2 新系统功能分析(System Function) .............. 错误!未定义书签。 4.4.1 总体功能分析 .......................................... 错误!未定义书签。 4.4.2基础算法教学子系统功能分析............... 错误!未定义书签。 4.4.3 运筹学生产应用子系统功能分析 ........... 错误!未定义书签。 5. 附件............................................................................ 错误!未定义书签。

数据结构课程设计报告模板

课程设计说明书 课程名称:数据结构 专业:班级: 姓名:学号: 指导教师:成绩: 完成日期:年月日

任务书 题目:黑白棋系统 设计内容及要求: 1.课程设计任务内容 通过玩家与电脑双方的交替下棋,在一个8行8列的方格中,进行棋子的相互交替翻转。反复循环下棋,最后让双方的棋子填满整个方格。再根据循环遍历方格程序,判断玩家与电脑双方的棋子数。进行大小判断,最红给出胜负的一方。并根据y/n选项,判断是否要进行下一局的游戏。 2.课程设计要求 实现黑白两色棋子的对峙 开发环境:vc++6.0 实现目标: (1)熟悉的运用c语言程序编写代码。 (2)能够理清整个程序的运行过程并绘画流程图 (3)了解如何定义局部变量和整体变量; (4)学会上机调试程序,发现问题,并解决 (5)学习使用C++程序来了解游戏原理。 (6)学习用文档书写程序说明

摘要 本文的研究工作在于利用计算机模拟人脑进行下黑白棋,计算机下棋是人工智能领域中的一个研究热点,多年以来,随着计算机技术和人工智能技术的不断发展,计算机下棋的水平得到了长足的进步 该程序的最终胜负是由棋盘上岗双方的棋子的个数来判断的,多的一方为胜,少的一方为负。所以该程序主要运用的战术有削弱对手行动战术、四角优先战术、在游戏开局和中局时,程序采用削弱对手行动力战术,即尽量减少对手能够落子的位置;在游戏终局时则采用最大贪吃战术,即尽可能多的吃掉对手的棋子;而四角优先战术则是贯穿游戏的始终,棋盘的四角围稳定角,不会被对手吃掉,所以这里是兵家的必争之地,在阻止对手进角的同时,自己却又要努力的进角。 关键词:黑白棋;编程;设计

图书管理系统课程报告

课程报告 课程名称: 专业班级: 学生姓名: 学号: 任课教师: 学期:

课程报告任务书 开发一个图书信息管理系统,图书信息包括:图书编号、书名、作者、出版社、类别、出版时间、价格等基本信息(也可以根据自己情况进行扩充,比如是否借出、库存量 等)。使之能提供以下基本功能: (1)图书信息录入功能(图书信息用文件保存)--输入 (2)图书信息浏览功能--输出 (3)查询功能(至少一种查询方式)、排序功能(至少一种排序方式): ①按书名查询②按作者名查询③按照价钱排序④按出版时间排序等等 (4)图书信息的删除与修改 扩展功能:可以按照自己的程度进行扩展。比如(1)简单的权限处理(2)报表打 印功能(3)甚至根据自己情况,可以加上学生信息,并扩充为图书借阅系统。(4) 模糊查询(5)综合查询(6)统计功能比如统计处某一类别的图书信息或筛 选出小于指定数量库存的图书信息等等,总之,可以根据自己需求进行分析功能。成绩评定教师:

1 需求分析 本次实验目的是开发一个图书管理系统,且该图书管理系统中应包含以下基本功能: (1)图书信息录入功能 (2)图书信息浏览功能 (3)查询功能 例如:按书名查询、按作者名查询等等 (4)排序功能 例如:按照价钱排序、按出版时间排序等等 (5)图书信息的删除与修改 除此之外,个人还可以根据自己的爱好进行各方面的扩展。 例如权限处理、图书排序等等。在我们设计自己的程序时不仅可以利用课本上的知识,还可以在互联网上查询有关该类信息,将其学习总结并利用在此次程序设计中。 利用这次程序设计实验,我们可以提高自己的设计和编辑程序的能力、了解一般程序的编写过程,还可以巩固加深我们对C语言程序基本知识的了解与掌握。我在该实验中不仅利用了课本上的函数知识、文本的输入和读出,还用互联网查阅了相关知识。 如“("")”,用汉语解释就是清屏功能;还有“()”函数,输入不读出,不过在利用“()”进行密码的改写时老是出错误,就舍弃了该函数。在利用“("")”时感觉还是很好的,用该函数后不仅可以使程序在运行时美观大方,还可以一眼扫描到我们要找的信息。 而我在我编写的程序中设计了如下的功能: ①登陆权限功能 ②查找全部图书并总图书本数功能 ③查找每本图书功能 ④添加图书功能 ⑤删除图书功能 ⑥修改图书功能

数据结构课程设计报告

《数据结构与算法》课程设计报告 学号: 班级序号: 姓名: 指导教师: 成绩: 中国地质大学信息工程学院地理信息系统系 2011年12 月

1.需求规格说明 【问题描述】 利用哈夫曼编码进行对已有文件进行重新编码可以大大提高减小文件大小,减少存储空间。但是,这要求在首先对一个现有文件进行编码行成新的文件,也就是压缩。在文件使用时,再对压缩文件进行解压缩,也就是译码,复原原有文件。试为完成此功能,写一个压缩/解压缩软件。 【基本要求】 一个完整的系统应具有以下功能: (1)压缩准备。读取指定被压缩文件,对文件进行分析,建立哈夫曼树,并给出分析结果(包括数据集大小,每个数据的权值,压缩前后文件的大小),在屏幕上输出。 (2)压缩。利用已建好的哈夫曼树,对文件进行编码,并将哈夫曼编码及文件编码后的数据一起写入文件中,形成压缩文件(*.Haf)。 (3)解压缩。打开已有压缩文件(*.Haf),读取其中的哈夫曼编码,构建哈夫曼树,读取其中的数据,进行译码后,写入文件,完成解压缩。 (4)程序使用命令行方式运行 压缩命令:SZip A Test.Haf 1.doc 解压缩命令:SZip X Test.Haf 2.doc或SZip X Test.Haf 用户输入的命令不正确时,给出提示。 (5)使用面向对象的思想编程,压缩/解压缩、哈夫曼构建功能分别构建类实现。 2.总体分析与设计 (1)设计思想: 1、压缩准备:1> 读文件,逐个读取字符,统计频率 2> 建立哈夫曼树 3> 获得哈弗曼编码 2、压缩过程: 1> 建立一个新文件,将储存权值和字符的对象数组取存储在文件头

图书馆管理信息系统分析报告(完整资料).doc

【最新整理,下载后即可编辑】 1.需求分析 1.1使用范围 在学校图书馆内部的现有局域网这个网络环境下,信息由各用户在规定的权限下在各自的工作站上录入,信息上网后各用户可查询,调用,达到信息共享。 1.2背景 图书馆在正常运营中面对大量书籍、读者信息以及两者间相互联系产生的借书信息、还书信息。现有的人工记录方法既效率低又错误过多,大大影响了图书馆的正常管理工作。因此需要对书籍资源、读者资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,有利用管理效率的提高。 图书馆管理信息系统是图书馆的支持系统,当前设计应满足以下需求: (1)图书馆将图书借给读者,读者和图书都必须在系统中注册。 (2)系统通过设置帐号和密码控制用户访问,读者和管理员可修改自已的密码。 (3)图书馆负责购买图书,对于流行的书一般要多买几本,如果图书破旧或过期则可以从图书系统中删除。 (4)图书馆管理员负责与读者打交道,他们的工作要得到系统的支持。 (5)借书者可以事先通过网络预约要借的图书,然后到管理员处办理正式借书手续。 (6)图书借出有时间限限制,一旦超期,管理员应及时通知借书者归还图书。 (7)图书馆可以方便地产生、更新和删除系统中与书目、借书者、借书记录和预约记录等信息。

(8)系统能够运行在Windows系统下,用户可通过局域网操作,还应该有一个非常好的图形用户界面(GUI) (9)系统应该具有很好的可扩展性。 1.3功能分析 三个功能模块: (1)读者管理 ①办证:新生将个人信息提交到办证处,办证处和新生信息表核对,正确则可办证,将个人信息保存到读者信息表,同时生成图书借阅表,发出领证通知单,不符合则发出拒绝申请单。 ②注销:读者提交注销申请表,办证处调用读者信息表,查找该读者信息。若存在且信息一致,则在读者信息表中将该读者信息删除,同时删除借阅信息表;若信息不存在或与提交信息不一致,则发出拒绝申请单。 ③挂失补办借书证:读者提出挂失补办申请表,办证处核对信息,若信息不一致,则发出拒绝申请单;若信息一致,修改读者信息表,办理补办业务,发放领证通知单。 (2)借还书管理 ①借书:读者提交借阅申请表,管理员先调用读者信息表和读者的借阅信息表,审核该读者是否有权限借阅图书。若无权限,则发出拒绝申请表;若有权限,管理员再调用图书信息表,查找读者所申请借阅的图书信息,若可借,则发出领书通知单,待读者获得图书后,将信息存入其借阅信息表;若不可借,则发出拒绝申请表。 ※无权限的情况:⒈读者信息不存在。 ⒉读者借阅图书数量已达最大限,不可再借。 ⒊读者信息表中的账目信息中余额不足。 ※不可借的情况:⒈该书已有人借阅。

图书管理系统报告

XXXXXX学院 《信息管理》课程设计报告 学院:商学院 专业班级:财务管理1403 课程名称:管理信息系统 设计题目:图书管理信息系统报告 指导教师:王海涛

时间:2016-6-20

课程设计成绩评定表

任务分配表

目录 摘要.............................................................................................................................................. - 2 - 第1章项目章程 .................................................................................................................. - 3 - 第2章项目概述 .................................................................................................................. - 5 - 系统名称 ............................................................................................................................. - 5 - 任务由来 ............................................................................................................................. - 5 - 存在问题 ............................................................................................................................. - 5 - 重要程度 ............................................................................................................................. - 5 - 第3章系统目标 .................................................................................................................. - 6 - 第4章项目投资 .................................................................................................................. - 7 - 人力成本 ............................................................................................................................. - 7 - 设备成本: ......................................................................................................................... - 7 - 时间成本: ......................................................................................................................... - 7 - 第5章初步调查和可行性分析 .......................................................................................... - 8 - 第6章图书管理系统详细调查 ........................................................................................- 12 - 第7章图书管理系统逻辑分析DB图..............................................................................- 16 - 第8章实验内容 ................................................................................................................- 18 - 第9章总结 ........................................................................................................................ - 26 - 个人心得 ........................................................................................................................... - 26 -

图书馆管理信息系统分析报告

“管理信息系统”课程论文图书馆管理信息系统分析报告

图书馆管理信息系统分析报告 1引言 背景 随着成都信息工程学院规模的日益扩大,图书馆的书也越来越多,而一直以来人们使用较为先进的自动化方式管理图书馆的日常工作,对于图书馆的借书和还书过程,想必大家都已很熟悉。在计算机尚未在图书管理系统广泛使用之前,借书和还书过程主要依靠手工。一个最典型的手工处理还书过程就是:读者将要借的书和借阅证交给工作人员,工作人员将每本书上附带的描述书的信息的卡片和读者的借阅证放在一个小格栏里,并在借阅证和每本书贴的借阅条上填写借阅信息。这样借书过程就完成了。还书时,读者将要还的书交给工作人员,工作人员根据图书信息找到相应的书卡和借阅证,并填好相应的还书信息,这样还书过程就完成了。而对于现在的成都信息工程学院来说已经不可能了,随着近年来信息技术及计算机网络技术的不断发展, 图书馆也先从传统的图书馆发展到自动化图书馆,再发展到今天的数字图书馆,这些变化使得图书馆的形象越来越现代化,人们查找资料也更加方便。对于一些小图书馆和一些图书室来说,由于工作人员比较少,长期以来,作为图书馆的主要工作—图书借阅一直未能很好地开展。在平常的图书借阅工作中, 由于大部分读者不熟悉图书馆藏书,且对图书排架分类的不了解,往往花费很长时间才能找到其所需的书。 当前图书管理系统 1.2.1图书馆自动化系统 图书馆的工作很多,如选书、分类、编目、流通、期刊与电子文献的购买与利用、统计分析、业务管理等。从广义上讲,图书馆自动化应该包括所有上述工作的自动化。从狭义上讲,主要是指应用计算机及其相关技术进行图书馆数据处理。 我校图书馆和公共图书馆不同,主要是为广大在校师生教学和科学研究服务的,以最大限度地满足师生的需求为目标。 图书馆工作任务分成两个部分:一是图书馆内部业务工作,主要包括图书和期刊采购加工、流通、查询等,即图书馆自动化系统;另一部分是针对外部网络环境的文献信息服务工作,主要包括光盘视听室开展的校园网光盘检索服务,电子资源服务,使读者可以在图书馆或校内不同的计算机终端上进行检索。针对图书馆业务量比较大,服务器的配置要有较高的运算速度,及自动化系统运行所需的足够大的内存,因为服务器比较关键,如果配置太低肯定会影响自动化系统的正常运行。 1.2.2现行图书馆组织结构 现行图书馆的业务流程

数据结构课程设计报告

《数据结构课程设计》报告 题目:课程设计题目2教学计划编制 班级:700 学号:09070026 姓名:尹煜 完成日期:2011年11月7日

一.需求分析 本课设的任务是根据课程之间的先后的顺序,利用拓扑排序算法,设计出教学计划,在七个学期中合理安排所需修的所有课程。 (一)输入形式:文件 文件中存储课程信息,包括课程名称、课程属性、课程学分以及课程之间先修关系。 格式:第一行给出课程数量。大于等于0的整形,无上限。 之后每行按如下格式“高等数学公共基础必修6.0”将每门课程的具体信息存入文件。 课程基本信息存储完毕后,接着给出各门课程之间的关系,把每门课程看成顶点,则关系即为边。 先给出边的数量。大于等于0的整形。 默认课程编号从0开始依次增加。之后每行按如下格式“1 3”存储。此例即为编号为1的课程与编号为3的课程之间有一条边,而1为3的前驱,即修完1课程才能修3课程。 例: (二)输出形式:1.以图形方式显示有向无环图

2.以文本文件形式存储课程安排 (三)课设的功能 1.根据文本文件中存储的课程信息(课程名称、课程属性、课程学分、课程之间关系) 以图形方式输出课程的有向无环图。 拓展:其显示的有向无环图可进行拖拽、拉伸、修改课程名称等操作。 2.对课程进行拓扑排序。 3.根据拓扑排序结果以及课程的学分安排七个学期的课程。 4.安排好的教学计划可以按图形方式显示也可存储在文本文件里供用户查看。 5.点击信息菜单项可显示本人的学好及姓名“09070026 尹煜” (四)测试数据(见六测设结果)

二.概要设计 数据类型的定义: 1.Class Graph即图类采用邻接矩阵的存储结构。类中定义两个二维数组int[][] matrix 和Object[][] adjMat。第一个用来标记两个顶点之间是否有边,为画图服务。第二个 是为了实现核心算法拓扑排序。 2.ArrayList list用来存储课程信息。DrawInfo类是一个辅助画图的类,其中 包括成员变量num、name、shuxing、xuefen分别代表课程的编号、名称、属性、 学分。ArrayList是一个DrawInfo类型的数组,主要用来在ReadFile、DrawG、DrawC、SaveFile、Window这些类之间辅助参数传递,传递课程信息。 3.Class DrawInfo, 包括int num;String name;String shuxing;float xuefen;四个成员变量。 4.Class Edge包括int from;int to;double weight;三个成员变量。 5.Class Vertex包括int value一个成员变量。 主要程序的流程图: //ReadFile.java

图书管理系统java课程设计报告

图书管理系统j a v a课程 设计报告 Document serial number【KKGB-LBS98YT-BS8CB-BSUT-BST108】

焦作大学信息工程学院《Java实训》报告 题目:图书管理系统 班级:网络(1)班 姓名:张辉 学号: 2011年 12 月22日

摘要 随着信息技术的发展,计算机已被广泛的应用于社会的各个领域,成为推动社会发展的技术动力。而在计算机应用中,软件的作用十分突出,软件已经发展成为信息技术的核心,主导着信息产品的开发和信息技术市场的进一步的开拓。软件产业已成为社会信息化进程中的一个战略性产业。在软件技术的应用中软件的开发技术尤其是应用型软件产品的开发技术成了重中之重。不断开发适应用户需求、市场需要的新型软件产品。尤其是在校园里,各种软件的应用无处不在,为我们的学习和生活提供了方便。学校的图书馆不仅给我们提供看书学习的地方,还给我们提供了一套功能齐全的图书馆系统,方便我们搜索书籍、借阅图书。 我们本次的Java课程设计的最终目标是实现一个图书馆管理系统,使其具有一般图书管理系统所具有的功能,可以实现管理员日志、管理员添加、管理员退出、读者添加、读者修改、读者查询、读者删除、新书入库、书籍查询、书籍借阅与归还等功能。因为Java是一门很优秀的编程语言,具有面向对象、与平台无关、安全、稳定和多线程等特点,所以用Java编程为我们本次程序的编写提供了方便。在设计中我们主要进行了数据库及类的设计,把整系统分成了15个类和5个表。通过应用awt、swing、sql、util等包,合理的添加了按钮、菜单、文本框、文本区、表格等组件类,还包含窗口、面板等容器类,经过设计者合理的布局,完成了窗体的设计,并通过建立JDBC-ODBC桥接器连接到Access数据库后,向数据库发送SQL语句实现程序与数据库中表间的消息通信,从而实现了相应的图书馆管理系统的功能。 本文主要分为绪论、系统功能介绍、数据库需求分析、系统功能实现、结论、致谢、参考文献7大块。在绪论中介绍了本次课设选题的缘由及思想。系统功能介绍中详细介绍了本图书管理系统的整体思想及其具体功能。在数据库需求分析中详细说明了数据库的需求分析、概念设计及表的设计。在系统功能实现中主要通过抓图来体现设计的结果。总之,我们的整体设计思想均在报告中体现。 关键词:图书馆管理系统,Java程序设计语言,Access数据库 目录

数据结构课程设计报告

编号 课程设计 题目 1、一元稀疏多项式计算器 2、模拟浏览器操作程序 3、背包问题的求解 4、八皇后问题 二级学院计算机科学与工程学院 专业计算机科学与技术 班级 2011级 37-3班 学生姓名 XX 学号 XXXXXXXXXX 指导教师 XXXXX 评阅教师 时间 1、一元稀疏多项式计算器 【实验内容】 一元稀疏多项式计算器。

【问题描述】 设计一个一元稀疏多项式简单计算器。 【需求分析】 其基本功能包括: (1)输入并建立多项式; (2)输出多项式,输出形式为整数序列为:n,c1,e1,c2,e2,……,cn,en,其中n 是多项式的项数,ci,ei分别是第i项的系数和指数,序列按指数降序排序;(3)多项式a和b相减,建立多项a+b; (4)多项式a和b相减,建立多项式a-b; (5)计算多项式在x处的值; (6)计算器的仿真界面(选做); 【概要设计】 -=ADT=- { void input(Jd *ha,Jd *hb); void sort(dnode *h)

dnode *operate(dnode *a,dnode *b) float qiuzhi(int x,dnode *h) f",sum); printf("\n"); } 【运行结果及分析】 (1)输入多项式:

(2)输出多项式(多项式格式为:c1x^e1+c2x^e2+…+cnx^en): (3)实现多项式a和b相加: (4)实现多项式a和b相减: (5)计算多项式在x处的值:

2、模拟浏览器操作程序 【实验内容】 模拟浏览器操作程序 【问题描述】 标准Web浏览器具有在最近访问的网页间后退和前进的功能。实现这些功能的一个方法是:使用两个栈,追踪可以后退和前进而能够到达的网页。在本题中,要求模拟实现这一功能。 【需求分析】 需要支持以下指令: BACK:将当前页推到“前进栈”的顶部。取出“后退栈”中顶端的页面,使它成为当前页。若“后退栈”是空的,忽略该命令。 FORWARD:将当前页推到“后退栈”的顶部。取出“前进栈”中顶部的页面,使它成为当前页。如果“前进栈”是空的,忽略该命令。 VISIT:将当前页推到“后退栈”的顶部。使URL特指当前页。清空“前进栈”。 QUIT:退出浏览器。 假设浏览器首先加载的网页URL是:http:

图书管理系统需求分析报告分析

第三版 图书管理系统需求分析报告 学院数学计算机学院 专业软件工程 班级软件( 2 )班 姓名学号李向拯 12014246057 刘海军 12014246028 李梦阳 12014245965 陈志楠 12014245926 韩翔 12014245946 指导教师赵国栋 报告成绩

目录 1.引言 (4) 1.1编写目的 (4) 1.2项目背景 (4) 1.3参考资料 (5) 2、任务概述 (5) 2.1目标 (5) 2.2用户特点 (5) 2.3需求概述 (6) 2.4功能层次图 (8) 3、数据描述 (9) 3.1静态数据 (9) 3.2动态数据 (9) 3.3数据库描述 (9) 3.4数据流图与数据字典 (9) 3.5数据采集 (21) 4、功能需求 (21) 4.1功能划分 (21) 4.2功能描述 (21) 5、性能需求 (22)

5.1数据精确度 (22) 5.2系统响应时间 (23) 5.3适应性 (23) 6、运行需求 (23) 6.1用户界面 (23) 6.2软件接口 (23) 6.3故障处理 (23)

1.引言 为了我校图书馆方便管理和与读者、图书供应商更好的联系特提出开发此系统。 1.1编写目的 随着社会的进步,信息技术的广泛应用,数字化管理的优势日趋显著。针对大学图书馆管理效率低和人员不足的情况,设计实现一个大学图书信息管理系统。通过与计算机的结合使用对图书馆的各种图书信息进行管理,这样可以给管理员和用户带来以下不同的方便:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高工作效率,也是图书馆等部门管理科学化、正规化的重要标志之一。而且计算机管理的成本不断降低。因此,开发一套这样的大学图书管理软件已经很有必要,并且实现研究服务于实践的原则。 1.2项目背景 a.所建议开发软件的名称:宁夏大学图书管理系统。 b.项目的任务提出者:宁夏大学数学计算机学院2014级学生:李向拯、李梦阳、韩翔、陈志楠、刘海军。 开发者:宁夏大学数学计算机学院2014级学生:李向拯、李梦阳、韩翔、陈志楠、刘海军。 用户及实现软件的单位:宁夏大学中卫校区图书馆。

数据结构课程设计

《数据结构》 课程设计报告 学号 姓名 班级 指导教师 安徽工业大学计算机学院 2010年6月

建立二叉树和线索二叉树 1.问题描述: 分别用以下方法建立二叉树并用图形显示出来: 1)用先序遍历的输入序列 2)用层次遍历的输入序列 3)用先序和中序遍历的结果 2.设计思路: 分三个方式去实现这个程序的功能,第一个实现先序遍历的输入数列建立二叉树;第二个是用层次遍历的方法输入序列;第三个是用先序和后序遍历的结果来建立二叉树;三种方法建立二叉树后都进行输出。关键是将这三个实现功能的函数写出来就行了;最后对所建立的二叉树进行中序线索化,并对此线索树进行中序遍历(不使用栈)。 3.数据结构设计: 该程序的主要目的就是建立二叉树和线索二叉树,所以采用树的存储方式更能完成这个程序; 结点的结构如下: typedef struct bnode { DataType data; int ltag,rtag; struct bnode *lchild, *rchild; } Bnode, *BTree; 4.功能函数设计: BTree CreateBinTree() 用先序遍历的方法讲二叉树建立; BTree CREATREE() 用队列实现层次二叉树的创建; void CreatBT(); 用先序和中序遍历的结果建立二叉树; void InThread(BTree t,BTree pre) 中序线索化; 5.编码实现: #include #include #define max 100 typedef struct bnode { char data; int ltag,rtag; struct bnode *lchild,*rchild; }Bnode,*BTree; BTree Q[max]; BTree CREATREE() { char ch; int front=1,rear=0;

数据结构课程设计报告

数据结构课程设计 设计说明书 TSP 问题 起止日期:2016 年 6 月27 日至2016 年7 月 1 日 学生姓名 班级 学号 成绩 指导教师( 签字) 2016 年7 月 1 日

目录 第1 章需求分析.................................................................................1... 1.1 简介 (1) 1.2 系统的开发背景 (1) 1.3 研究现状 (1) 第2 章概要设计.................................................................................2... 2.1 系统开发环境和技术介绍 (2) 2.2 系统需求分析 (2) 2.2.1 总体功能分析 (2) 2.2.2 核心功能分析 (3) 第3 章详细设计...................................................................................4... 3.1 系统开发流程 (4) 3.2 系统模块设计 (4) 3.3 系统结构 (6) 3.2 系统流程图 (6) 第4 章调试分析...................................................................................7... 4.1 程序逻辑调试 (7) 4.2 系统界面调试 (8) 第5 章测试结果...................................................................................9... 5.1 测试环境 (9) 5.2 输入输出测试项目 (9) 5.3 测试结果 (10) 结论.....................................................................................................1..1.. 参考文献................................................................................................1..1. 附录.......................................................................................................1..2..

相关文档
相关文档 最新文档