图书信息管理系统——C语言
图书信息管理系统 前言 计算机对社会发展所具有的广泛而深远的影响。人类文化的内涵是随着社会发展而进化的。在现代信息社会中,计算机已不仅仅是一种工具,而且是一种文化。信息技术对人类社会进行的全方位渗透,已经形成一种新的文化形态信息时代的计算机文化。计算机学问成为当代学问分子结构中不行缺少的重要部分。 C语言是今年来国内外得到快速推广运用的一种高级语言。C语言功能丰富,表达实力强,运用敏捷便利,应用广,目标程序效率高,可移植性好,既具有高级语言的优点,又具有低级语言的语言特点,因此C语言对我们来说很重要。 设计是一门重要的计算机基础课程,通过学习,学生不仅要驾驭高级程序设计语言的学问,更重要的是在实践中逐步驾驭程序设计的思想和方法,培育问题求解和语言的应用实力。此次上机实习,不但要使同学们的程序设计实力上一台阶,同时要提高与程序设计和软件开发有关的各种综合实力。 由于课时和上机时间的仓促,所以我对很多内容还来不及消化,对上机演练非常生疏,还有一些学问遗忘,因而这次程序设计的实习事实上是对我的一次集中的强化练习。虽然其时间短,任务重,但我们的确达到了此次课程设计的目的。 图书信息管理系统 一、题目要求 1、新进图书基本信息的输入。。 2、办理借书手续。 3、办理还书手续。 4、管理书籍。 二、需求分析 依据题目须要,由于图书信息须要存放在文件中,所以应供应文件输入、输出等操作。应供应查找、借阅、管理等功能。由于有多种借阅图书的方法,而又须要供应相应的算法,最终还应供应键盘是选择菜单实现功能。 三、总体设计 图书信息管理系统 图书借阅 图书归还 退出系统 借阅状况 管理系统 四、具体设计 1、主函数 [说明] 主函数较多、较困难,已经和主菜单函数合并,主菜单函数里还包括了各自的二级菜单,并已经起先了对各个函数的调用。。 [流程] 不进入主菜单,干脆调用二级函数。 建立学生人事文件 建立书籍档案文件 建立借还关系 近入主菜单,选择相应操作。 [程序] void main { int choice; printf请建立学生人事文件\n; buildfile1; /*建立并输出学生人事文件*/ print1; printf请建立书籍档案文件\n; buildfile2; print2; /*建立并输出书*/ printf请建立借还关系文件\n; buildfile3; /*建立并输出借还关系文件*/ print3; printf\n; printf欢迎运用图书馆管理系统\n; do { printf0---退出\n1----借书\n2---还书\n3---统计某天各种类型书进货量\n; printf4---对各类书某月进货量、出借量用链表进行排序\n; printf5---查询本人书籍借阅状况\n6---查询某类图书借还状况\n; printf请输入您要进行的操作; scanfd,choice; switchchoice { case 0 printf退出胜利\n; return; case 1 borrow; break; case 2 back; break; case 3 day_import; break; case 4 sort; break; case 5 searchme; break; case 6 search; break; default printf非法输入 请重输\n\n; } } whilechoice0||choice6; } 2、各功能模块设计 (1)建立学生人事文件模块 [说明] 数据信息存放在文件中,一条记录对应一条学生信息,便利管理。 [流程] 建立学生学生人事文件 输入每位学生学号 输入每位学生借书数量 [程序] void buildfile1 { struct student stu; int j; FILE *fp; printf请输入学生人事文件名长度不超过20位; getsfname1; fpfname1,wb; printf请输入学生数; scanfd,N; getchar; forj1; jN; j { printf请输入第d位学生学号长度不超过6位,j; getsstu.stunum; printf请输入第d位学生已借书数量数量不超过10,j; scanfd,stu.number; fwritestu,length1,1,fp; printf\n; getchar; } fclosefp; return; } (2)建立书籍档案文件 [说明] 建立书籍档案文件,统一管理图书信息。 [流程] 添加书籍种类 建立书籍文件 添加每类书的出借量,库存量,和索书号 [程序] void buildfile2 { struct book boo; int j,num,rest; FILE *fp; printf请输入书籍档案文件名长度不超过20位; getsfname2; fpfname2,wb; printf请输入书籍种数; scanfd,M; forj1; jM; j { printf请输入第d本书索书号整型不超过2000,j; scanfd,boo.bnum; getchar; printf请输入第d本书书名长度不超过20位,j; getsboo.bname; printf请输入第d本书目前出借量,j; scanfd