C语言程序设计书店租书信息管理系统.docx

上传人:b****2 文档编号:1574287 上传时间:2022-10-23 格式:DOCX 页数:10 大小:186.90KB
下载 相关 举报
C语言程序设计书店租书信息管理系统.docx_第1页
第1页 / 共10页
C语言程序设计书店租书信息管理系统.docx_第2页
第2页 / 共10页
C语言程序设计书店租书信息管理系统.docx_第3页
第3页 / 共10页
C语言程序设计书店租书信息管理系统.docx_第4页
第4页 / 共10页
C语言程序设计书店租书信息管理系统.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

C语言程序设计书店租书信息管理系统.docx

《C语言程序设计书店租书信息管理系统.docx》由会员分享,可在线阅读,更多相关《C语言程序设计书店租书信息管理系统.docx(10页珍藏版)》请在冰豆网上搜索。

C语言程序设计书店租书信息管理系统.docx

C语言程序设计书店租书信息管理系统

 

学生课程实验报告书

课程:

《C语言程序设计》

级系

专业班

学号姓名

指导教师:

2010--2011学年第2学期

 

书店租书信息管理系统

一.实训目的

通过集中训练,进一步掌握C语言的编程设计与开发,并以十字交叉链表为背景,训练数据结构的设计技术。

通过编制一个信息管理系统,学会分析问题、建立数学模型、确定研究算法、编制程序流程图、编制程序、调试程序及数据分析项目设计开发步骤。

掌握结构体、十字交叉链表的存取方法,函数、C语言设计方法、不同功能模块的调用使用方法等。

二.实训项目

信息管理系统借鉴

1.图书类别基本信息参考:

中文字段名

类型及长度

举例

编号

char

‘0’表示教辅,‘1’表示少儿等

类别名称

char[10]

中小学教辅

续费率

double

会员出租折扣率

double

2.图书基本信息参考:

中文字段名

类型及长度

举例

类别

char

‘0’表示教辅

图书编号

char[10]

“200900011”

图书名称

char[30]

小学语文阅读训练80篇

作者

char[20]

出版社

char[30]

长春出版社

售价

double

租价

double

会员价

double

库存数

int

上架日期

char[11]

2009/04/20

架位

char[3]

3.图书租阅基本信息参考:

中文字段名

类型及长度

举例

类别

char

‘0’表示教辅

图书编号

char[10]

“200900011”

姓名

char[20]

身份证

char[19]

租书日期

char[11]

2010/01/20

可租天数

int

5

应还日期

char[11]

2010/01/25

归还日期

char[11]

2010/01/28

续费

double

三.开发工具

这里我通过VC++6.0作为开发工具,运用C语言的结构体、链表指针、十字链表等技术实现该书店租书管理系统。

该书店租书管理系统主要实现功能模块有:

基本信息录入模块、基本信息修改模块、信息删除模块、基本信息查询模块、图书归还模块。

四.实训项目设计

1、数据结构设计及用法说明

1、程序中的struct设计

structguest

{

chargno[10];//顾客编号

chargname[20];//顾客姓名

chargID[30];//身份证号

chargaddr[30];//顾客地址

chargtel[13];//顾客电话

intday;//可租用日期

structguest*next;//指向下一个顾客

structbook*info;//指向图书节点

};

structbook_info

{/*图书基本信息*/

charcate_id;//如'a'代表类别

charbook_id[10];//如‘100000’图书编号,该编号是唯一的

charbook_name[30];//书名英文

charbook_author[20];//作者tonyzeng

charbook_press[30];//出版社福建出版社

doubleprice;//售价

doublerent_price;//租价

doublemember_price;//会员价

intinventory;//库存量

charshelves_time[11];//上架时间'2009/09/09'

charshelves[6];//书架'第5架位'

inttimes;/*租阅次数*/

structbook_info*next;//指向图书下一个点

structbook_rent*rent;//连接到租阅信息

};

structcategory

{/*图书类别基本信息*/

charcate_id;//类别'a'

charcate_name[10];//类别名称'教育'

doublerenew_rate;//续费

doublediscount;//会员折扣率

structcategory*next;//指向下一个信息点

structbook_info*info;//指向图书节的

};

structrented_history//存放归还的历史记录

{

structbook_rent*rent;//创建指向租阅信息的指针

structrented_history*next;//指向自身的指针

};

2、程序中的使用

通过如下声明创建首结点:

structrented_history*history_1;//创建历史租阅信息首结点

structcategory*head_1;//创建第一级类别首结点

3、操作方法

1 在主函数中通过调用程序中创建的首结点

2 在相应的函数中调用首结点的指针

3 函数中创建相应结构体,通过获得首结点指针完成相应语句功能的调用

4 完成相应操作后,返回相应首结点指针,退回主函数

2、程序结构(流程图)

1、某类别所有图书信息的查询

2、图书类别录入流程图

3、各模块的功能

1.图书类别录入模块:

该模块用于将图书进行分类,如教育、科学、文学等类别,通过相应的类别代码来表示这些类别信息,然后在添加其他相应的数据信息,实现图书的类别有效的管理。

2.图书基本信息录入模块:

在类别信息录入后,相应在各个类别录入相关的图书基本信息如英语、数学、读者、青年博览等图书,并且录入各图书相应的售价、租价、会议价、上架时间、架位等信息,完成图书数据的管理。

3.图书租阅信息录入模块:

录入图书类别已经图书的基本信息后,如果有读者需要进行借阅图书,则调用该功能函数,通过输入读者借阅的图书类别已经图书编码来确定所租的图书,同时记录该用户身份证、姓名,并且记录借阅时间和应还时间等。

4.图书类别信息修改模块:

当输入错误或者需要修改时,调用该功能进行类别信息修改。

5.图书基本信息修改模块:

当信息输入错误或需要修改时,通过该模块修改相应信息。

6.图书租阅信息修改模块:

当信息录入错误或要修改时,调用该模块进行相应的修改。

7.图书类别删除模块:

当某类别需要删除的话,如果该类别不存在图书信息,则给予删除,若该类别存在图书信息,则提醒该删除操作会造成数据丢失,若执意要删除则给予相应的删除释放内存操作。

8.图书基本信息删除模块:

当某图书需要进行删除时,若该图书租借信息为空则给予删除,若存在租借信息则提醒删除会造成数据丢失,若执意删除则给相应的删除操作。

9.图书归还模块:

当租阅后的图书,需要归还给书店时,则进入该模块,执行相关的图书归还操作,并且将归还的图书记录下来,以便以后查询使用。

10.条件查询模块:

输入相应的条件,查询相关的信息。

如查询类别信息,就调用输出函数;查询图书信息就是输入类别调用相关函数;查询租阅信息就输入类别和图书编码。

11.统计图书逾期模块:

用于查询哪些租阅的图书已过期,以方便系统管理员通知相关的租阅该图书的人员,尽快归还图书。

12.统计图书租阅次数模块:

用于统计图书被租阅的次数,以方便管理员对相关图书的进货管理。

4、试验结果

 

1.主界面

2、2.1进入信息录入系统

2.2图书信息录入

2.3租阅信息录入

3.3.1修改类别模块

 

3.3.2修改图书基本信息模块

4.4.1删除图书信息

5.5.1按条件查询

体会:

1.在编写代码初级阶段时,由于没有考虑指针函数调用的好处,麻木的编写代码。

结果发现整天代码偏乱,冗余度很低。

之后就不断的继续修改代码,增加了很多的工作量,而且使程序的可读性不够高。

2.经过好几次的修改后,程序代码可读性有进一步的提高,也掌握了指针间的互相调用过程等信息。

3.在这次编程中,让我深刻体会到指针的功能强大性,让我进一步认识到指针的使用方法。

4.进一步的掌握了c语言的用法,对结构体、指针、数组、十字链表等等一些信息都有了更深刻了认识,并且能够熟练的掌握。

5.在完成作业中,因为很多数据的随意增删改致使截图不能很完善。

很多数据混乱

 

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 辩护词

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1