学术与工程实践I

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

学术与工程实践I(计算机)北方工业大学信息工程学院计算机科学与技术系2012年06月15日药店管理系统一、实训目的通过本实训,学生应具有创建一个命令行模式的药店管理系统。1、掌握结构体类型数据的定义方法和引用方法。2、掌握有关C语言程序设计的文件打开,关闭,输入,输出以及定位。3、培养C语言程序编程规范。二、实训内容及要求1.项目需求通过此系统可以实现如下功能:1)录入药品基本信息2)药品的入库管理3)药品的销售管理4)药品的退货管理5)修改药品基本信息(包括增加、删除、查询、退出功能)。6)修改密码7)输出全部药品基本信息、药品入库信息、药品库存信息、药品销售信息。8)查询管理9)统计管理10)退出系统注:药店系统作为一个用来进行药品管理的应用软件,在对其进行需求分析的过程中,需要充分考虑系统的可用性和有效性,联系实际应用,从而得到合理的软件。2.设计要求1)画出功能模块图。2)整个程序中不能只有main函数,必须按照功能模块图进行功能函数编写。功能函数不能少于10个。3)药品基本信息、药品入库信息、药品库存信息、药品销售信息必须以结构体形式储存。4)药品基本信息、药品入库信息、药品库存信息、药品销售信息、用户密码必须存储在各自文件中。对文件进行操作实现对所需信息的增加、删除、修改、查询。3.开发环境操作系统:Windows2000/XP开发语言:C语言三、课程指导1.相关知识要点1)开发流程a)、需求分析,严格按照需求和要求进行开发。b)、设计功能模块,定义功能函数。c)、定义药品基本信息、药品入库信息、药品库存信息、药品销售信息结构体,完善功能函数。d)、程序功能测试,减少程序BUG,提高程序质量。2)相关知识点基本知识和知识要素知识点C语言结构体定义struct结构体名{类型1成员1;类型2成员2;......类型n成员n;};文件存取顺序存取,直接存取,数据存放有文本和二进制两种形式文件指针FILE*指针变量名;打开文件fopen(文件名,文件使用方式);如:FILE*fp;fp=fopen(file_1,r);2.相关提示1)录入药品基本信息每条药品基本信息包括药品编号、药品名称、药品规格、生产厂家、价格、有效期、注意事项等信息。将药品基本信息存入文件“medicine_base.dat”中。注意:不同药品的药品编号不能相同,若出现相同,应该给出不能保存药品信息的提示。2)药品信息的入库文件使用方式1.r.为读而打开文本文件.(不存在则出错)2.rb.为读而打开二进制文件.(不存在则出错)3.w.为写而打开文本文件.(若不存在则新建,反之,则从文件起始位置写,原内容将被覆盖)4.wb.为写而打开二进制文件.5.a.为在文件后面添加数据而打开文本文件.(若不存在,则新建;反之,在原文件后追加)6.ab.为在文件后面添加数据而打开一个二进制文件.7.r+.为读和写而打开文本文件.(读时,从头开始;在写数据时,新数据只覆盖所占的空间,其后不变)8.rb+.为读和写而打开二进制文件.只是在随后的读写时,可以由位置函数设置读和写的起始位置.9.w+.首先建立一个新文件,进行写操作,随后可以从头开始读.(若文件存在,原内容将全部消失)10.wb+.功能与w+同.只是在随后的读写时,可以由位置函数设置读和写的起始位置.11.a+.功能与a相同;只是在文件尾部添加新的数据后,可以从头开始读.12.ab+.功能与a+相同;只是在文件尾部添加新数据之后,可以由位置函数设置开始读的起始位置.读写文件数据格式化读写函数:fscanf和fprinf文件关闭调用的一般形式是:fclose(文件指针);例如:fclose(fp);正常完成关闭文件操作时,fclose函数返回值为0。如返回非零值则表示有错误发生。根据输入的药品编号、药品名称、入库数量、入库日期、入库人等信息,将药品进行入库处理,在对药品进行入库前,应首先检查药品编号、药品名称信息是否在药品基本信息中存在,若不存在给出信息出错的提示,若存在,则进行药品入库操作,药品入库信息存入文件“medicine_input.dat”中,同时修改药品的库存信息“medicine_stock”中的库存数量和入库数量。注意:若药品是第一次入库和非第一次入库时库存信息的不同处理。3)药品销售业务根据销售编号、药品编号、药品名称、销售数量、客户名称、销售日期等信息,将药品进入销售处理。具体操作过程为:当顾客购买药品时,首先输入客户名称、药品编号、药品名称、销售数量,然后系统查询该药品信息的库存情况。若库存有药品且数量足够,则为顾客办理销售手续,从药品基本信息表中获得此药品的价格信息,根据销售数量得到药品的销售金额信息,将顾客的销售药品信息(包括销售编号、药品编号、药品名称、销售价格、销售数量、销售金额、客户名称、销售日期)添加到文件“medicine-sell.dat”中,并修改文件“medicine_stock.dat”中该药品信息的销售数量和库存数量;若库存此药品库存数量小于销售数量,则输出药品库存不足信息;若库存无此药品,则输出无此药品信息;注意:若药品是第一次入库和非第一次入库时库存信息的不同处理。4)药品退货业务根据顾客的销售编号信息,办理退货,具体操作过程为:首先输入客户名称、销售编号、药品编号、退货数量,然后系统查询该药品信息的销售情况。若客户名称、销售编号、药品编号存在,且退货数量小于销售数量,且从文件“medicine-sell.dat”中修改该顾客购买药品的退货数量,并修改文件“medicine_stock.dat”中该药品信息的退货数量和库存数量。若销售此药品销售数量小于退货数量,则输出药品退货数量大于销售数量的提示;若销售无此药品,则输出无此销售药品信息;5)修改药品基本信息修改药品基本信息包括添加、删除、查询、退出药品基本信息功能。另外,在修改药品基本信息前必须输入正确的用户密码才能进入修改药品基本信息菜单进行操作。注意:在进行删除操作时注意药品信息的处理,当该药品基本信息有已经有库存信息时,不能删除药品基本信息。6)修改密码可以修改用户密码。7)输出全部药品基本信息、药品入库信息、药品库存信息、药品销售信息。8)查找指定信息按照不同查询条件分别输出相应的药品基本信息、药品入库信息、药品库存信息、药品销售信息等,查询到的信息以列表形式显示,要求显示全部符合条件的信息。药品基本信息:用户可以按照药品基本信息的药品编号、药品名称、生产厂家、价格、有效期等信息方式进行查询,查询到的药品基本信息以列表形式全部显示。药品入库信息:用户可以按照药品入库信息的药品编号、药品名称、入库数量、入库日期、入库人进行查询,查询到的入库信息以列表形式全部显示。药品库存信息:用户可以按照药品库存信息的药品编号、药品名称、库存数量、入库数量、退货数量、销售数量等信息进行查询,查询到的药品库存信息以列表形式全部显示。药品销售信息:用户可以按照药品销售信息的销售编号、药品编号、药品名称、销售价格、销售数量、客户名称、销售日期、销售金额、退货数量进行查询,查询到的销售信息以列表形式全部显示。9)指定信息统计按照不同条件分别统计相应的药品入库信息、药品库存信息、药品销售信息等,统计的信息以列表形式显示,要求显示统计结果信息。药品入库信息:可以分别按照药品编号、药品名称、入库日期、入库人等不同条件的具体取值进行对入库数量进行统计,并将统计信息输出。药品库存信息:可以按照药品名称的具体取值进行对库存数量、入库数量、退货数量、销售数量进行统计,并将统计信息输出。药品销售信息:可以分别按照药品编号、药品名称、客户名称、销售日期等不同条件的具体取值进行对销售数量、销售金额、退货数量进行统计,并将统计信息输出。10)退出系统3.参考资料1.C语言程序设计(第三版)2.C语言程序设计函数大全四、进度安排进度目标第1周查询资料,整理编写思路。完成结构体、系统主界面设计创建药品基本信息、药品入库信息、药品库存信息、药品销售信息,并放入指定文件中。完成基本信息录入、入库初步完成程序的结构部分,并对以后的编写有一个理性的认识。掌握向文件中保存数据信息第2周完成销售退货功能修改药品基本信息修改密码进行销售、退货、修改药品基本信息和修改密码函数的编写第3周输出全部药品基本信息、药品入库信息、药品库存信息、药品销售信息。完成查找、统计功能退出系统。验机、项目总结进行输出、查询、统计函数的编写,发现编写的问题,以便在今后的编写中,进行解决。

1 / 7
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功