- 1、本文档共55页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
图书销售实训报告(第四组)概要
2016/2017第一学期管理信息系统开发课程设计报告系 别:计算机信息系专 业:计算机信息安全管理班 级:信息331401组 别:第 四 组组 长:何慧敏组 员:刘 喆、于 杰、刘文丹、徐学冉、 宣宇军、刘武威、李 阳、王璐璐指导老师:赵进才完成日期:2016.12.30一、程序设计说明书一)引言程序名称:图书销售管理系统开发软件:Microsoft Visual Studio 2008主要功能:本程序为图书销售管理系统,实现图书的查找、排序、购买、退货等功能,并将数据存入磁盘文件中保存。程序说明:准确性要求好,可靠性要求高,输入控制严格,页面响应时间短,用户界面也有好,输出准确,功能强大。运行环境:Windows 7二)程序设计思路本图书销售管理系统主要完成的功能有:1、图书查询1.1 ISBN查询 1.2 关键词查询 1.3 所有图书信息查询2、排行查询2.1 销量排行 2.2 库存排行 2.3 价格排行3、图书购买3.1 ISBN检索图书 3.2 购买图书的信息显示和购买确认 3.3 购买数据存入4、图书退还4.1 购买图书的信息显示和购买确认 4.2 购买数据存入为实现这些功能,本程序一共编写了11个函数分别实现上述功能。如下:函数名功能judge判断输入内容是否为0或者正整数;是则返回该正整数,否则返回-1show显示图书所有信息ordershow对界面进行分栏;使界面清晰友好;提示用户当前所在的操作界面column显示图书信息的表头栏create创建储存图书信息的单链表,同时将图书信息储存在另一结构体数组中freellist释放单链表的内存,指针赋空search利用单链表进行ISBN查找图书;找到则输出图书信息,否则给出提示keyword关键词查询:显示书名完整包含关键词的图书信息bubblesort利用单链表进行冒泡排序,使销量由高到低排序显示selectsort利用数组进行选择排序,使价格由低到高排行显示insertsort利用数组进行插入排序,使库存由低到高排行显示将程序进行模块化处理是十分有益的。模块化后,程序显得更加清晰;出错后可以分块解决;便于多次实现同一功能。本程序对磁盘数据的读取和储存是利用了链表和结构体数组的。在创建链表的同时对全局的数组变量赋值。在实现功能时,部分功能是对链表进行操作,部分功能时对数组进行操作。在购买和退还操作时,链表和数组内数据的更改是同时的。最后读取数组内的信息进入文件,保存到磁盘中实现这一系统,除了对功能的实现和对数据的读取、更改、储存外,对错误的提醒和隐患的避免也是十分重要的。本系统中有对文件打开错误的提醒,对动态空间的释放和指针的赋空。本程序中对操作内容正误的判断是这样进行的:为了避免用户输入内容中存在空格引起错误,本程序使用while循环,利用fflush(sdtin);gets(char a[]);对所有数据进行读取的。这样消除了缓冲区的回车,并将用户输入的一行所有内容读入(用scanf就会在出现空格之后停止),并用judge函数进行判断。将0或正整数正确输出,并将含有其他任何无关字符的输入视为错误,输出-1(但是当直接回车时,judge函数会输出0)。这样就可以实现只对用户的正确内容进行读取后退出循环;对错误内容给出提示,并利用while循环返回上一操作界面。由于不同的功能的实现需要排除用户可能输入的不同错误,所以main函数中的大量内容对用户输入内容的正确读入和错误提醒。此外,本程序在开始打开文件”图书.txt”时,是以可读方式打开的。以防止原始数据由于程序的意外关闭而丢失。在程序末尾,在关闭文件后重新以可写方式打开文件,并对数据重新读入。这样可以防止大量图书信息丢失。当然,本程序还有一些缺陷。由于所开的字符串数组的大小限制,用户输入内容不能超过100个字符,否则程序出现错误。此外,若在程序运行中途关闭程序,则购买和退还图书的信息会全部丢失。改进的方式是将程序的读取放在每一次购买和退货操作之后进行。四)变量说明变量意义FILE *p指向磁盘文件的指针struct book *bookpmain函数中用于单链表操作的指针int n图书种类数struct book *bklist储存图书信息的单链表首地址struct book bk[100]储存图书信息的数组int op主操作变量(控制进入某一主要功能)int operat次操作变量(控制主要功能下的次要功能)int booknumber购买或者退还的图书数量int i计数使用char ISBN0[100]查询图书的ISBN号char buy[100]购买图书的ISBN号char back[100]退还图
文档评论(0)