C语言程序设计课程设计

上传人:m**** 文档编号:158874861 上传时间:2022-10-07 格式:DOCX 页数:18 大小:161.05KB
收藏 版权申诉 举报 下载
C语言程序设计课程设计_第1页
第1页 / 共18页
C语言程序设计课程设计_第2页
第2页 / 共18页
C语言程序设计课程设计_第3页
第3页 / 共18页
资源描述:

《C语言程序设计课程设计》由会员分享,可在线阅读,更多相关《C语言程序设计课程设计(18页珍藏版)》请在装配图网上搜索。

1、C语言课程设计小型图书馆管理系统学生姓名专业班级指导教师职 称所在单位教学部主任1需求分析11.1系统概述112系统运行环境11.3功能需求描述12总体设计12.1开发与设计的总体思想12.2系统模块结构22.3模块设计22.4系统流程描述32.5界面设计33详细设计63.1应用部署图63.2査询功能模块73.3删除功能模块93.4系统维护模块124系统测试16总 结16参考文献171需求分析1. 1系统概述此系统对于图书馆的管理者和读者來说都至关重要,直接关系到图书的借用率,所 以开发图书管理系统能够为管理员和读者提供充足的信息和快捷的查询手段。系统实现 图书馆的增加图书、查询图书、删除图书

2、、借阅图书、还书;增加读者、查询读者、删 除读者、借书信息等智能化管理过程。图书管理员只需略懂电脑知识就可以简易的操作 该图书馆管理系统。1. 2系统运行环境1硬件环境处理器: bitei Pentium 166 MX 或更高内存:32M硬盘空间:1GB显卡:SVGA显示适配器2. 软件环境操作系统:Windows 98/ME/2000/XP开发语言:Visual C+1. 3功能需求描述小型图书馆管理系统主要是为图书管理员提供一个方便易用的界面,同时还具有查 看读者及书籍的添加、查询、修改、删除的功能。小型图书馆管理系统主要需要实现以下一些基本功能:1. 借出图书:依据学号,学生可以借出指定

3、图书。2. 归还图书:依据学号,学生可以归还所借图书。3. 图书信息维护模块:增加图书、删除图书,以及更改、查询图书信息。4. 读者信息维护模块:增加读者、删除读者,以及更改、查询读者信息。2总体设计2.1开发与设计的总体思想本系统主要设计思想是实现图书馆的功能机管理系统信息的查询、借书、还书等主 要功能。系统的设计方法是结构化实际方法,系统用C语言进行开发用户可以清晰的了 解图书馆内的情况。2. 2系统模块结构依据需求分析结果,图书馆管理系统可以分为四个模块:借书功能模块、还书功能 模块、图书信息维护模块、读者信息维护模块如图2-1所示:图2-1系统模块结构图图23系统总体流程图3详细设计基

4、于系统需求分析与系统总体设计的结论,下面按照模块的划分來分别阐述系统的 详细设计和实现过程。3.1瞒类型本系统中主要采用结构数据类型存储图书、读者等的基本信息。本系统中定义class 类类型用于描述图书信息。class结构体类型定义格式如下:class bookpublic:int no;char name20;char author10:int price;int b_flag;int b_del;public:其中name用于描述图书名称,author用于描述图书作者。用于描述读者信息的类类型class定义格式为:class readerpublic:int no; int sex;读者性

5、别,1表示男,0表示女char name20;int r_del; int r_bor;/I存在,2删除/I借过书,2没有借书book brbook;public:void addreader(int id, char na, int s)/增加读者no = id;sex = s:strcpy(name, na);r_del = 1; _3. 2图书馆管理系统功能模块图书馆管理系统模块主要提供图书管理员实现增加图书、查询图书、删除图书、借 阅图书、还书;增加读者、查询读者、删除读者、借书信息等。该模块按照查询方法不 同分为借书功能模块、还书功能模块、图书信息维护模块、读者信息维护模块。一、借书

6、模块功能设计与实现1. 借书模块描述通过输入学号、书号,借取图书2. 借书模块算法函数设计如下:int findbooks(int suffix)int no;cout 请输入书号:;cin no;for (int i 二 0; i = top; i+)if (btarrayi.no 二二 no & btarrayib_del 二二 1) return i;return 一1;二、还书模块功能设计与实现1. 还书模块描述通过输入学号、书号,还图书2. 还书模块算法函数设计如下:int findreaders (int suffix)int no;cout 请输入学号:;cin no;for (

7、int i=0; i 二 top; i+)if (rdarrayi.no 二二 no & rdarrayir_del 二二 1) _return i;return T; 三、图书维护模块功能设计与实现1. 图书维护模块描述增加图书、删除图书,以及更改、查询图书信息。2. 还书模块算法函数设计如下:(1) 增加图书void addbooks()book bk;int no;char bname20;char bau10; int pr;cout endl cin no;cout endl cin bname: cout endl cin bau;cout endl cin pr;cout end

8、l;请输入书号:;请输入书名:;请输入作者:;请输入价格:;bk b_flag = 1:bk addbook (no, bname, bau, pr) top+;btarraytop二 bk;return;(2) 修改图书信息void edit books ()int cur;cur 二 findbooks():if (cur = -1)cout 没有这本书 endl;return;cout 书 号: btarray cur. no 书名: btarray cur. name 作者: btarray cur. author 价格: btarray cur. price endl;cout 请修

9、改数据:endl;cout endl 书的名称:;cin btarraycur. name;return;(3) 删除图书 void delbooks()int cur;cur 二 findbooks():if (cur = -1)return;if (btarraycurb_flag 二二 2) 一cout 该图书己经借出,请在归还后再删除。 endl;return;btarraycurb_del 二 2;return;(4) 查找图书int findbooks()int no;char value6;cout 请输入书号:;cin no;for (int i 二 0; i 二 top; i

10、+)if (btarrayi. no = no & btarrayi. b_del = 1) if (btarray i. b_flag = 1) strcpy (value,在架”);if (btarray i. b_flag = 2) strcpy (value,借出”);cout 书号: btarray i. no 书名: btarray i. name 作者: btarrayi. author 价格: btarrayi. price 图书状 态: value endl;return i;return 一1;(5) 显示全部图书信息void listbooks ()char value6

11、;for (int i 二 0; i 二 top; i+)if (btarrayi. b_del = 1)if (btarray i. b_flag = 1) strcpy (value,在架”);if (btarray i. b_flag = 2) strcpy (value,借出”);cout 书号: btarrayi. no 书的名称: btarray i. name 图书状态: value endl;return;三、读者维护模块功能设计与实现1. 读者维护模块描述增加读者、删除读者,以及更改、查询读者信息。2. 读者模块算法函数设计如下:(1) 增加读者void addreaders

12、()reader rd;int no;int rs:char rname20:cout 请输入学号:;cin no;cout endl 请输入姓名:;cin rname:cout endl 请输入性别(1为男,0为女):;cin rs;cout endl;rd. addreader (no, rname, rs);rd r_bor = 2;top+;rdarraytop二 rd;return;(2) 修改读者信息void editreaders()int cur;cur 二 findreaders():if (cur = -1)cout 没有该学生 endl;return;cout 请修改数据

13、: endl;cout endl 姓名:;cin rdarraycur.name:return;(3) 删除读者void delreaders()int cur;cur 二 findreaders():if (cur = -1)return;if (rdarraycurr_bor 二二 1) _cout 该用户借了图书,请还书后再删除 endl;return;rdarraycurr_del 二 2;return;(4) 查找读者int findreaders()int no;char value3;cout 请输入学号:;cin no;for (int i=0; i 二 top; i+)if

14、(rdarrayi.no 二二 no & rdarrayir_del = 1) if (rdarray i r_bor 二二 1) strcpy (value,借“);if (rdarray i r_bor 二二 2) strcpy (value, 无“);cout 学号: rdarray i. no 姓名: rdarray i. name 是否借书: value endl;return i;return T;(5) 显示全部图书信息void listreaders()char value3:for (int i=0; i 二 top; i+)if (rdarrayi.r del 二二 1)i

15、f (rdarray i r_bor 二二 1) strcpy (value,借);if (rdarrayi r_bor 二二 2) strcpy(value, 无“);cout 学号: rdarray i. no 姓名: rdarray i. name 是否借书: value endl; return;4系统测试对于软件测试而言,黑盒测试是把程序看成一个黑盒子,完全不考虑程序的内部结 构和处理过程。也就是说,黑盒测试是在程序接口进行的测试,它只检查程序功能是否 能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据产生正确的输出信 息,并且保持外部信息(如:数据库或文件)的完整性。黑盒

16、测试乂成为功能测试。而 白盒测试法的前提是可以把程序看成装在一个透明的白盒子里也就是完全了解程序的 结构和处理过程。这种方法按照程序内部的逻辑测试程序,检验程序中的每条通路是否 都能按预定的要求正确工作。白盒测试又称为结构测试。在设计得好的软件系统中,每个模块完成一个清晰定义的子功能,而且这个子功能 和同其他模块的功能之间没有相互依赖关系。因此,可以把每个模块作为一个单独的实 体來测试,而且通常比较容易设计检验模块正确性的测试方案。模块测试的目的是保证 每一个模块作为一个单元能正确运行。4.1登陆图书査询系统运行程序:” E?港衣D“k*op小IS书胚Debug卫稈l&exJ X图书管理系抚借

17、书还书因书百51用户管理5)退岀*:* :* *4.2借书输入“1”来选择书号以借书 S3 *C:U5eroW)opdvEffiDebugH=BSfi.exe,忖*杠*:*:4:*杠*刘*:*桶*紳* 匸图书管理系抚借书:还书因书百球*杠用户管理5)退岀吋 * 杠細:初:*刘心*:4:* 杠:m:*w* ?14. 3査看图书情况输入“3”进入图书维护,在图书维护中输入“5”來查看图书的基本情况价格:态人间失格作者:丈宰治I?: 2 llil:孤39图书狀态:借岀因书维护*蛍加*直蕊*曲i*程b*显示*(6)返回上一层*%囹书维护*I増如*片(2)#改* 團除* (4)4 坡* 显不* (6)1

18、回上一层*L*4. 4在读者维护中输入“5”来了解所有读者的借书情况*6)1E 一层* 好紜_iw_7X/X?S/)2 2 4 5 6借无总 结在初学C语言的一-个学期后,我们进行了 C语言实训阶段,尝试编写一个比较复 杂的程序系统。在为期两周的时间中,我们同组的同学共同的感受是:C语言实训和平 时上课所接触的程序是有很大不同的,所经受的考验和克服的困难是平时所无法比拟 的。好在同组的搭档们精诚合作,分工明确, 有问题共同解决,攻克了 C语言实训的 较为复杂程序。在实训中,我们认识到自己还有很多的知识没学好,基础知识没理清,而且许多东 西还要去翻书,去上网搜索。而且遇到一-些小错误运行不出来,

19、就会烦躁不安,觉得 有些自暴自弃或者抱怨项目的变态,以后要克服,尽量保持一-颗良好的心态,学好C语 言,也学好用C语言编写一个按要求的系统。还有就是对于未來,近程就是下学期,我觉得我还有许多方面需要提高。首先我 要继续学习好C语言的基础知识,然后能在电脑.上熟练的运用。然后每天都能写一些 程序,上网时候多看一些优秀的教程和优秀的代码。遇到问题时多和同学讨论,并且多 弄出几套方案,多锻炼自己结局问题的能力和与同学合作的能力。实训项目使我们熟悉了 C程序设计过程,培养了我们的环境适应能力及发现问题、 分析问题、解决问题的实际工作能力,为我们今后的发展打下了良好的基础。参考文献1 李瑞.徐克圣.刘月凡.戚海英.C程序设计基础M.北京:清华大学出版社. 2009. 72 布鲁志著.吴丹等译.面向对象的软件工程一构建复杂且多变的系统M.北京:清 华大学出版社.2002. 103 霍顿(美).杨杰(译).北京:清华大学出版社.20084 薛圆圆.C语言开发手册.北京:电子工业出版社.2011.4

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!