中南民族大学信管c语言课程设计图书信息管理系统方案

上传人:公**** 文档编号:500789504 上传时间:2023-04-14 格式:DOC 页数:29 大小:87KB
返回 下载 相关 举报
中南民族大学信管c语言课程设计图书信息管理系统方案_第1页
第1页 / 共29页
中南民族大学信管c语言课程设计图书信息管理系统方案_第2页
第2页 / 共29页
中南民族大学信管c语言课程设计图书信息管理系统方案_第3页
第3页 / 共29页
中南民族大学信管c语言课程设计图书信息管理系统方案_第4页
第4页 / 共29页
中南民族大学信管c语言课程设计图书信息管理系统方案_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《中南民族大学信管c语言课程设计图书信息管理系统方案》由会员分享,可在线阅读,更多相关《中南民族大学信管c语言课程设计图书信息管理系统方案(29页珍藏版)》请在金锄头文库上搜索。

1、 . . . 中南民族大学管理学院学生课程设计报告课程名称: C程序设计语言 选题名称: 图书信息管理系统 年 级:2011专 业:信息管理与信息系统学号:姓名:新浪微博 song-style是坏学长指导教师:完成地点:管理学院综合实验室完成日期: 2012年12月 20 12 学年至20 13 学年度第 1 学期 / 新浪微博 song-style是坏学长一、题目(问题)描述1、系统以菜单方式工作。2、图书信息录入功能(图书信息用文件保存)输入。3、图书信息浏览功能输出,查询。4、查询和排序功能:(至少一种查询方式)算法。 按书名查找 按作者查询等。5、图书信息的删除与修改。创新要求:在基本

2、要求达到后,可进行创新设计,如实现会员资料的查询、会员注销,为借书人办理注册。办理借书手续(非注册会员不能借书)。办理还书手续等等。信息描述:图书信息包括:登录号、书名、图书编号、单价、作者名、分类号、出版单位、出版时间、价格等。借阅人信息包括:借书人、性别、学号二、问题分析1、系统要现许多的功能,因此遵循结构化程序设计思想来进行本系统的设计自顶向下、逐步细化,将系统设计任务分解出许多子功能模块进行设计。2、程序将综合if语句与switch语句的运用方法与嵌套应用方法,循环结构的三种语句while、do-while.、for,以与函数的定义方法和调用方法等来进行编写。三、系统设计 图书信息管理

3、系统1、程序总体结构录入浏览修改删除查询按分类号按作者名按书名浏览书籍信息添加书籍信息按作者查询按书名查询按书名按作者名2重要数据的数据结构设计struct BOOK :把所要的数据charshuming999,zuozheming999,fenleihao999,danwei999,shijian999,jiage999;全放在一维数组中,以结构体的形式表现出来。这是文件录入和读取的关键,相当于做成一个文件,需要的时候将里面的数据读取或者修改。(1).录入模块:录入图书信息并保存于文件中。(2).浏览模块:添加一个或多个图书信息,并将所添加图书信息保存,方便查找。(3).删除模块:对图书信息

4、做删除处理。(4).修改模块:void xiugai根据需要对图书信息进行修改。(5).查询模块:对已建立的图书信息进行查询,并且可根据需要选择按书名、作者或按分类号查询。(6).菜单 : 帮助借阅者根据所需进行选择。3函数设计函 数 名:菜单函数 void select()函数功能:运行后显示主界面,通过输入来选择下一步操作。参数说明:int n 用于判断使用者所要进入的界面的序号。算法描述:根据使用者输入的数字进行判断,并调用相对应的函数。函 数 名:登陆函数 void dl()函数功能:该函数功能为辨识管理权限,只有正确输入登录号才能进入主界面。参数说明:int n ,k=0,其中n用于

5、识别登录号正确与否,k用于做一个循环。算法描述:用户输入登录号存在n里,判断n值是否等于11056026,是,则调用菜单函数。否,则让用户重新输入,两次输错以后关闭程序。函 数 名:录入函数 void input()函数功能:进入该函数,开始根据提示录入图书信息参数说明: int i=0; 用于自加,以便更换储存输入的信息的位置。Char a;接收用户输入的字符。算法描述: printf提示信息,用户输入需要录入的数据,输入Y则调用lr()。输入N则调用clect(),输入其他则调用shifou()。函 数 名:浏览函数 void output()函数功能:进入该函数,按照输入顺序依次显示信息

6、 参数说明:int i=0; 用于自加,以更换数据的位置信息以输出。char a, b用于接受用户输入的字符。 算法描述:输出第一本书籍的信息,i+。输入Y,则输出第二本书籍的信息。输入N ,则调用slect().函 数 名:查询函数 void search ()函数功能:进入函数,选择不同方式进行查询参数说明:int i ;cha j,m100,a; i用于做循环以搜索图书,j用于判断用户需要的查询方式,m100用于存放用户输入的搜索数据。算法描述:根据用户输入的字符进行判断,调用相应函数。 函 数 名:修改函数 void xiugai()函数功能:进入该函数,开始根据提示修改图书信息参数说

7、明:int i 用于做循环的条件限制,以寻找要修改的图书。char j 用于用于判断用户需要的修改方式并调用相应函数。char m100, 用于录入用户 新存入的数据信息并保存。char a; 根据用户输入的字符,判断其是否需要继续修改信息,并调用相应函数。算法描述:输入j值,判断修改方式:A按书名,则调用xiugai1,B按作者名调用xiugai2,C返回,调用slect()。然后用户输入需要修改的书本的信息,用循环寻找一样的数据,printf需要修改的图书信息,并且提示用户输入相应信息。 最后,输入Y,则goto mulu,N 则goto xiugai2。函 数 名:删除函数 void s

8、hanchu()函数功能:进入该函数,开始根据提示删除图书信息参数说明:int i,p; 用于做循环。char j, 用于用于判断用户需要的删除方式并调用相应函数。m100 用于给用户输入需要删除的书籍信息。a, 用于存放用户输入的字符。dd 用于存放用户输入的字符。算法描述:输入i值,判断删除方式:A按书名,则调用shanchu1,B按作者名调用shanchu2,C返回,调用slect()。然后用户输入需要删除的书本的信息,用循环寻找一样的数据,printf需要删除的图书信息,并且提示用户输入相应信息。 最后,输入Y,则从i的位置开始往后,所有book.的数据往前移动一位,然后输入Y,则xi

9、ugai,输入N则调用slect()。4程序运行视图(见下页)开 始输入n的值判断n的值删除模块修改模块录入模块浏览模块查询模块输入i值输入i值判断n的值判断n的值输入i值按书名按作者名按书名按作者名判断n的值输入新信息按作者名按书名按分类号删除信息添加信息四、难点与关键技术分析:程序设计的难点与解决方法说明 难点:算法设计,只有设计出来了算法以后才能步步展开,才能有目的的编写程序。所以必须要有一个好的算法。解决办法:算法设计用流程图会很非常直观,可以清楚的显示各个框之间的逻辑关系。流程图包括表示相应操作的框,带箭头的流程线,必要的文字说明。关键技术:删除书籍时,结构体中的数据往前移动一位。解

10、决办法:使用strcpy()来把后面的数据与前一位数据进行调换。还需要做一个循环。并且要注意的是,因为数组是100位的,所以如果删除的书籍是最后两位的话,是没有必要使用strcpy()的,因为存有数据的存的相对位置没有发生变化。五、测试情况:系统运行、数据输入与输出结果截图 六、源程序清单: #include#include#includestruct BOOK char shuming999,zuozheming999,fenleihao999,danwei999,shijian999,jiage999;books999;void main()void select();void dl();

11、dl(); printf(n); select();void select()system(cls);void jm();void input();void output();void search();void xiugai();void shanchu();int n;printf( 图书管理功能界面 n);menu:jm();scanf(%d,&n);getchar();if(n=1|n=2|n=3|n=4|n=5|n=6)switch(n)case 1: input();break;case 2: output();break;case 3: search();break;case 4

12、: xiugai();break; case 5: shanchu();break;case 6: exit(0);break;elseprintf(输入错误,请重新输入!n);printf(输入你再次的选择:n);printf(n);printf(n);printf(n);goto menu;void dl() int n;int k=0;zl:system(cls);printf(n);printf(n);printf(n);printf( *欢迎光临图书管理系统*n);printf(n);printf(n);printf(请输入你的学号:);scanf(%d,&n); if(n=11056026)select(); else if(k2) printf(输入错误,请重新输入!n); printf(输入你再次的选择:);k+;goto zl;else printf(登录失败n);exit(0); void jm()printf( *n);printf( * *n);printf( *

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号