- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
电子信息工程系课程设计报告
课程名称:高级语言程序设计(C)课程设计
实验项目名称:简易书店管理系统 实验时间:6.23~6.27
班级:计教131 姓名:张兆杰 学号:201311401127
实 验 目 的:
1. 提高分析问题、解决问题的能力以及实际动手能力。
2. 深入理解C语言中控制语句、数组、函数、指针、结构体等知识的渗透交互应用,提高用C语言解决实际问题的技术和能力。
3. 初步理解数据处理的一般方法,了解数据的读取、处理、保存等技术。
4. 通过具体而微的图书管理系统,初步了解系统开发的一般过程、形式。了解并基本掌握结构化程序设计,加强对一个系统开发的整体把控能力。
实 验 环 境:
Turbo C2.0/win-tc
实验项目及分析:
0. 前言
软件开发流程(Software development process)即软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编程和调试、程序联调和测试以及编写、提交程序(请同学们查阅软件开发流程的相关文献)。
作为一个小系统,本实验的开发过程大致包括:功能(需求)分析、系统设计、编程实现和调试、测试、提交程序和相关文档。
1. 功能(需求)分析
书店为了能实现日常的经营,经常涉及到到事物及应该具有的功能是:图书入库(进书采购时)、图书销售、查看图书的库存情况(清单)、图书删除、数据保存、数据备份等功能。
在现实中的商店,商品都具有一个条形码,用来唯一识别商品种类。这是一个重要的数据信息,对于图书来说,就是ISBN号,现实商店中都用条码阅读器来阅读,本实验中条件所限,使用键盘输入书号来模拟条码阅读器。
2. 系统设计
2.0 涉及到的数据结构
图书信息数据类型,采用结构体,包含了书号、书名、作者、单价、库存数量等核心信息:
typedef struct
{char bkno[10]; /*书号*/
char bkname[20]; /*书名*/
char author[10]; /*作者*/
float price; /*单价*/
int num; /*库存数量(单位:册)*/
} BOOK;
最大数组长度,实验中设置为1000;
#define MAXNUM 1000
图书书库,用BOOK类型的数组bk保存,每个数组单元代表一种图书,退出系统时应该保存在文件中,为全局数组: BOOK bk[MANUM];
图书种类数量,为全局变量,退出系统时应该保存在文件中:
int BKNUM =0; /*不同图书的数量,初始值为0*/
2.1 图书进库:
采购时,读取条形码(ISBN号),如果该书已经存在(书号已经在数据库中了),直接显示该图书信息,输入数量后,修改书库中的图书数量;如果书号不在书库,则录入该图书详细信息,并添加信息到书库bk数组。
相关函数原型:void bookin()
2.2 图书销售:
如果顾客将购买某本书,营业员读取条形码(ISBN号),系统会告知该书是否在库存清单中,如果不在,显示适当的提示信息;如果在,系统显示该书的详细信息并询问所需的册数。如果库存书的册数不足,显示相应的销售失败的提示信息;册数足够则显示这些书的总价格,此时销售成功,在书库中的册数减去销售的册数。
相关函数原型:void booksail ()
2.3 图书列表:
显示库存中现有的图书,每20行暂停。
相关函数原型:void booklist()
2.4 打开和保存数据文件:
所有图书相关信息都可以保存在磁盘文件(saledata.txt)上,程序开始后,先从数据文件读取数据(到数组),以数组为中心进行图书进、销等操作;所有操作结束后,退出程序时必须把数组数据保存回磁盘文件,并把原数据文件作为备份文件saledata.bak。
相关函数原型:void rdata(),从文件读取数据到bk数组。
void wdata() 保存bk数组的数据到文件,同时备份旧文件。
2.5 友好的界面:
要求有友好的操作界面,以上功能都能在界面中以适当的形式体现并方便地操作。
相关函数原型: int showsel():清屏并显示功能选项。
2.6 文件结构:
前两字节存放记录个数(即不同书的数量BKN
文档评论(0)