基于C语言的图书管理系统程序设计(共29页).doc
《基于C语言的图书管理系统程序设计(共29页).doc》由会员分享,可在线阅读,更多相关《基于C语言的图书管理系统程序设计(共29页).doc(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上四川师范大学成都学院信号分析与处理基于C语言的图书管理系统程序设计 学生姓名x学 号x所在学院x专业名称x班 级xx班指导教师x成 绩 x学院二一四年十二月专心-专注-专业课程设计任务书学生姓名xx学生学号x学生专业x学生班级x指导教师x职 称xx发题日期 2014 年 10 月 23 日完成日期 2014 年 11 月 15 日设计题目基于C语言的图书管理系统程序设计设计目的:1、 初步了解软件开发的一般方法和步骤;2、 提高学生用C语言进行文件操作和绘图应用的编程技术水平;3、提高撰写技术文档的能力。具体任务及要求:任务:利用C语言的文件操作能力设计开发一个图书管
2、理系统,实现对新进图书基本信息的输入、图书基本信息的查询、对撤消图书信息的删除、为借书人办理注册、办理借书手续、办理还书手续等。 要求:1、 必须有完整程序及必要的解释说明;2、 必须有运行结果;3、写出设计课程设计报告。课程设计进度安排:序号内容安排时间1阅读题目并分析课题内容,提前安排进度10.2210.232查找资料,并与同学讨论课题要求10.2510.283通过软件实现课题要求,完成各个模块11.111.34完成所有的课题,并与同学分享,相互检验11.411.65完成实验报告,交老师检查11.101112课程设计参考文献:1 谭浩强C语言程序设计教程清华大学出版社,2005,7:161
3、-1662 苏小红C语言大学使用教程电子工业出版社,2004,7:89-923 王敬华,林萍,张维语言程序设计M北京:清华大学出版社,2003.44 朱三元计算机应用与软件J,2004(02):18-20指导教师签字院长审核签字基于C语言的图书管理系统程序设计内容摘要:人类已经跨入了新世纪,正在进入信息化时代。信息化浪潮、网络革命在给社会来冲击的同时,也使图书馆业务受到了强烈的冲击,图书馆传统的管理和服务方式已不能适应读者对日益增长的文献信息的需求。随着馆藏量的不断增加,图书资料的录入和查询的难度也就相应增加,数据处理手工操作,工作量大,出错率高,出错后不易更改的手工方式,已经不能满足要求。基
4、于此问题,建立一个规范化,系统化,程序化的图书管理系统迫不急待。为方便对图书馆书籍、读者资料、借还书等进行高效的管理,特编写程序以提高图书馆的管理效率。使用程序之后,工作人员可以查询某位读者、某种图书的借阅情况,还可以对当前图书借阅情况进行一些统计,以便全面掌握图书的流通情况等等。关键词:语言 图书管理 数据处理 信息技术The books management system based on C language program designAbstract:Mankind has entered the new century, which is entering the informat
5、ion age. Wave of information technology, the network revolution has brought about the impact, but also make the library service has been badly hit,and library management and services of traditional methods can not meet the growing literature on the information the reader needs. With the continuous i
6、ncrease in the collections, books, data entry and also a corresponding increase in the difficulty of queries, data processing manual operation, heavy workload, error rate, error is not easy to change after the manual mode can no longer meet the requirements.Based on this problem, the establishment o
7、f a standardized, systematic, process-oriented library management system can not wait. For the convenience of library books, readers information, such as borrowing and returning books for efficient management, especially the preparation of the management procedures to enhance the efficiency of the l
8、ibrary. After using the program, staff can search for certain readers, borrow some books, can also borrow books on the current situation of some statistics in order to fully grasp the flow of books.Key words:C language, Library Management, Data Processing, Information Technology.目 录基于C语言的图书管理系统程序设计前
9、 言图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今,有很多的图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理。图书馆数据处理工作量大,容易出错,由于数据繁多,容易丢失,且不易查找。为了使图书借阅管理系统既能够提高工作效率,又可以提高工作水平。我使用visual C6.0作为开发工具,设计了一个可以实现图书增删改查、借书还书的一个图书借阅管理系统。1 本课题的开发背景随着社会信息量的与日俱增,作为信息存储的主要媒体之一图书,数量、规模比以往任何时候都大的多,不论个人还是图书管理部门都需要使用方便而有效的方式来管理自己的书籍。在计算机日益普及的今天,对
10、个人而言若采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多。对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,为了便于图书资料的管理需要有效的图书管理软件。计算机网络近年来获得飞速的发展,十年前,很少有人接触过网络。如今,计算机网络已经成为我们社会结构的一个基本组成部分。网络已被应用到人类生活的各个方面,人们通过网络通信,共享资源,网上超市、电子银行等也应运而生,各种提供不同特色,不同内容的网站如雨后春笋般涌现。计算机网络的发展为人们打开了一种新的视野,促成了一个新领域新产业的产生。网络的发展试图用一种全新的概念冲击各个传统的商业模式,改变人们的生活方式。新的需求产生了,人
11、们想通过网络进行个人通信、媒体传播、商业运作、办公、教学等。总之网络技术的发展促进了社会经济结构的变革。反之,社会经济对网络发展提出的新的需求又大大的促进了网络的发展,计算机网络及其所涉及的一系列技术成为计算机领域新的研究热点。在计算机日益普及的今天,对个人而言若采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多。对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,为了便于图书资料的管理需要有效的图书管理软件。该软件采用功能强大的数据库软件开发工具进行开发,具有很好的可移植性,可在应用范围较广的WINDOWS系列等操作系统上使用。除此以外,图书馆管理系统已成为方便了广大师生、学
12、校与外界之间的沟通架起了一座桥梁。但是,这并不能满足目前师生的需要。比如一些特定的需要要,在管理方面特别不方便,因为它受到地域的限制太大。就目前情况而言,急需充分利用网络方式的图书管理。我们的网络图书馆管理系统就是为了解决这问题而设计的。经过分析,我们使用microsoft公司的visual C开发工具。利用其提供的各种面向对象的开发工具能方便而简洁建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。1.1本课题要达到的设计目标本系统可以实现以下功能:l 系统以菜单方式工作;vl 图书信息录入功能(图书信息用文件保存);l 图书信息浏览功能;l 查询
13、功能;l 图书信息的删除与修改;l 办理借书手续;l 办理还书手续等等;l 退出程序。2系统设计本图书管理系统包含8个模块:借书模块、还书模块、新书入库模块、注销书模块、查询图书信息模块、查询作者信息模块、排序模块、退出模块。2.1开发技术及工具本系统是以Windows XP/7为环境,VC+6.0为应用程序,主要以C语言为编程语言完成代码的编写。VC+6.0是微软公司推出的开发Win32应用程序(Windows 95/98/2000/XP/NT)的、面向对象的可视化集成工具。它的最大优点就是提供了功能强大的MFC类库,MFC是一个很大的C+类层次结构,其中封装了大量的类及其函数,很多Wind
14、ows程序所共有的标准内容可以由MFC的类来提供,MFC类为这些内容提供了用户接口的标准实现方法,程序员所要做的就是通过预定义的接口把具体应用程序特有的东西填入这个轮廓,这将简化编程工作,大大的减少程序员编写的代码数量,使编程工作变得更加轻松容易。C语言是最基本的编程语言,其有以下优点:l 数据结构丰富。C语言的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等。能用来实现各种复杂的数据结构的运算。并引入了指针概念,使程序效率更高。另外C语言具有强大的图形功能,支持多种显示器和驱动器。且计算功能、逻辑判断功能强大。 l C是结构式语言。 结构式语言的显著特点是代码及数
15、据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。 l C语法限制不太严格,程序设计自由度大。虽然C语言也是强类型语言,但它的语法比较灵活,允许程序编写者有较大的自由度。 l C语言允许直接访问物理地址,可以直接对硬件进行操作。由于C语言允许直接访问物理地址,可以直接对硬件进行操作,因此它既具有高级语言的功能,又具有低级语言的许多功能,能够像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元,可用来
16、写系统软件。 2.2系统功能模块主函数是程序入口,采用模块化设计。首先在主程序中调出欢迎界面,定义一些必要变量,作一无限循环程序,循环体为一开关语句,该语句设置一个断点,其条件值是通过调用主菜单函数得到的返回值,根据该值,调用相应的功能函数,同时设置一个断点,当返回值为一定条件时结束程序。图2.1 总体结构图2.3系统主要流程分析开始输要归还图书编号(定义为:id)检查输入的编号是否为库存的书。且还书数量与当前库存量和是否大于总库存 否 是输入借阅的图书以及相应信息总库存减借出数量是否大于0 否 是结束图2.2 增加图书2.3.1 借书该模块是对借阅图书进行相应操作。运用if语句进行判断选择,
17、看目录中试否有该书信息,有则根据提示进行相应操作。运用while循环判当借书的数量是否大于库存量时,大于则要求再次输入,直至输入达到要求为止。void book_out(void) int n,s,l,d,x; .if(n=search_book()!=-1&&booksn.store>0) 。输入查询信息部分. while(x>booksn.store) .输入信息部分 for(l=0;l<10;l+) if(booksn.usrl=0) booksn.usrl=s;booksn.daysl=d; break; booksn.store=booksn.sto
18、re-x; if(n!=-1&&booksn.store=0) .2.3.2 还书该模块是对归还图书进行相应操作。运用if语句进行判断选择,看目录中试否有该书信息,有则根据提示进行相应操作。运用while循环判归还图书的数量是否大于库存量与现存量之差,大于则要求再次输入,直至输入达到要求为止。void book_in(void) int n,s,l,x; . if(n=search_book()!=-1&&booksn.store<booksn.total) printf("借阅者图书证列表:n"); for(l=0;l<10;l
19、+) if (booksn.usrl!=0) . 输入信息部分 while(x>(booksn.total-booksn.store) 输入归还信息. for(l=0;l<10;l+) if(booksn.usrl=s) booksn.usrl=0; booksn.daysl=0; break; booksn.store=booksn.store+x; if(n!=-1&&booksn.store=booksn.total) .;2.3.3 新书入库该模块是把新进图书进行入库处理,可输入图书的一些基本信息。例如:书号、书名、作者、现存量和库存量。 int book_
20、add(void) char c; int n; . for(n=0;n<100;n+) if(booksn.id=0) break;图书的信息录入。 booksn.store=booksn.total; return_confirm(); c=getchar(); return n;2.3.4 注销书该部分是图书目录中已有图书进行注销处理,删除该书在目录中的各种信息。 void book_del(void) int n; . if(n=search_book()!=-1) booksn.id=0; printf("该书已注销.n"); . 2.3.5 排序对输入图书
21、的编号进行升序排列。当图书目录为空时,显示“库存中无此书”。运用双层循环,i和j比较,i为0为止图书书号,j为i的下一个图书书号,当i书号大于j书号。运用第三变量进行交换,例如:a=b;b=c;c=a;。 void paixu(void) /*排序*/ char t210; char t310; int t4; int t5; int t, i,j; system("cls");for(i=0;i<100;i+) for(j=i+1;j<100;j+) if(booksi.id>booksj.id)t=booksi.id;strcpy(t2,booksi.
22、name);strcpy(t3,booksi.author);t4=booksi.total;t5=booksi.store;booksi.id=booksj.id;strcpy(booksi.name,booksj.name);strcpy(booksi.author,booksj.author);booksi.total=booksj.total;booksi.store=booksj.store;booksj.id=t;strcpy(booksj.name,t2);strcpy(booksj.author,t3);booksj.total=t4;booksj.store=t5; prin
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 语言 图书 管理 系统 程序设计 29
限制150内