C语言课设之图书管理系统.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言课程设计 目 录 1、需求分析; 2、系统总框图; 3、每个模块的设计分析; 4、列出所有定义的函数及说明; 5、举例说明1、2个比较有特点的算法; 6、数据分析。 7、存在的问题与不足及对策; 8、使用说明(操作手册); 9、学习心得。 图书管理系统设计 一.题目要求: 图书管理信息包括:图书名称、图书编号、单价、作者、存在状态、借书人姓名、性别、学号等。 程序还有以下功能:新近图书基本信息的输入; 图书基本信息的查询;对撤销图书信息的删除;办理借书手续;办理还书手续。 二.系统总框图 图书管理系统 图书管理系统 归还图书管理系统查询图书借阅图书 归还图书 管理系统 查询图书 借阅图书 按书名找增加图书按作者找删除图书修改图书图书统计会员管理 按书名找 增加图书 按作者找 删除图书 修改图书 图书统计 会员管理 卡号统计借书统计定义会员删除会员 卡号统计 借书统计 定义会员 删除会员 三.每个模块的设计分析和所有定义的函数及说明 1、数据结构 //图书的数据结构: struct book { int booknum; //书号 char bookname[20]; //书名 char bookcreat[10]; //书的作者 int turefalse; //用于借书和还书模块判断一本书是否借出的条件 }book[1000]; //定义一个比较大的1000本书 //会员卡的数据类型 struct car { int carnum; //卡号 char studentsex[4]; //性别 char studentname[20]; //姓名 int studentclass; //所在班级 }car[1000]; //定义一千个会员 //定义学生类型,用于存放借出的书籍 struct student { int carnum; //卡号 char lendbook[10]; //借出的书数 }student[1000]; //定义一千个学生 2、main() 主函数模块 主函数是程序入口,采用模块化设计。首先在主程序中打印欢迎界面,定义一些必要变量,作一无限循环程序,循环体为一开关语句,该语句设置一个断点,其条件值是通过调用主菜单函数得到的返回值,根据该值,调用相应的功能函数,同时设置一个断点,当返回值为一定条件时结束程序。 3、chabook() 查询图书函数模块 在这个模块中又分为两个子模块:按书名查找模块和按作者查找。 按书名查找模块:在这个子函数里使用指向文件的指针变量,定义指针变量fp,fp指向文件名为“book.txt”的首地址,如果不存在,则自动建立。从键盘输入书名,依次移动指针地址,直到找到输入的文件名,找到后显示图书信息,再判断状态值是否为1,真的话就显示“此书现在无人借阅”,假就显示“这本书已经有人借出!”,关闭文件,然后按任意键返回。如果找到最后一个地址仍没找到,就显示“没有你要查询的书籍!”。关闭文件。 按作者查找,原理同按书名查找。 lendbook() 借书函数模块 定义文件指针变量fp,fp2。fp指向“car.txt(会员卡记录文件)”首地址,从键盘输入卡号,与文件中保存的依次比较,如果一致,就找到这个地址,并赋给变量i。关闭这个文件。开始借书,输入要借的书,这时指针地址指向“book.txt”,以只读的方式打开,依次找与输入书名一致的图书,如果找到,又分两种情况:状态值为1,则把书借出,把此书的状态值改为0.否则,显示“书已被借出”。如果找不到,显示“不存在这样的书”,关闭文件。返回。 huanbook() 还书函数模块 同样定义两个指针变量:fp,fp2。先从键盘输入要还图书者会员卡卡号,然后是还书人名字,与文件中的相对照,都一致就进入还书过程,删除掉所还图书的借书记录,将还的书的原来状态设为无人借阅的。如果没找到图书就显示“你没有借这样的书,任意键返回...”,如果没找到所输卡号,则显示“没这样的卡,和管理员联系,按任意键返回...”。 还书过程结束。 lendcount() 借书统计函数模块 定义指向文件的指针变量fp,并使fp指向“record.txt”,以只写的方式打开文件,从首地址读取,找到借书信息,就把统计借出书个数的变量i的值加1。并显示借出的每一本书的信息。 addcar() 增加会员卡函数模块 定义指向文件的指针变量fp,并使fp指向“car.txt”的首地址,以追加的方式打开文件“car.txt”,从键盘输入会员信息,并写入文件。 delcar() 删除会员卡函数模块

文档评论(0)

好老师 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档