学术与工程实践I.doc
- 文档编号:2491637
- 上传时间:2022-10-30
- 格式:DOC
- 页数:7
- 大小:87KB
学术与工程实践I.doc
《学术与工程实践I.doc》由会员分享,可在线阅读,更多相关《学术与工程实践I.doc(7页珍藏版)》请在冰豆网上搜索。
学术与工程实践I
(计算机)
北方工业大学信息工程学院计算机科学与技术系
2012年06月15日
第7页共7页
学术工程实践项目规范 北方工业大学计算机科学与技术系
药店管理系统
一、实训目的
通过本实训,学生应具有创建一个命令行模式的药店管理系统。
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");
文件使用方式
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。
如返回非零值则表示有错误发生。
2.相关提示
1)录入药品基本信息
每条药品基本信息包括药品编号、药品名称、药品规格、生产厂家、价格、有效期、注意事项等信息。
将药品基本信息存入文件“medicine_base.dat”中。
注意:
不同药品的药品编号不能相同,若出现相同,应该给出不能保存药品信息的提示。
2)药品信息的入库
根据输入的药品编号、药品名称、入库数量、入库日期、入库人等信息,将药品进行入库处理,在对药品进行入库前,应首先检查药品编号、药品名称信息是否在药品基本信息中存在,若不存在给出信息出错的提示,若存在,则进行药品入库操作,药品入库信息存入文件“medicine_input.dat”中,同时修改药品的库存信息“medicine_stock”中的库存数量和入库数量。
注意:
若药品是第一次入库和非第一次入库时库存信息的不同处理。
3)药品销售业务
根据销售编号、药品编号、药品名称、销售数量、客户名称、销售日期等信息,将药品进入销售处理。
具体操作过程为:
当顾客购买药品时,首先输入客户名称、药品编号、药品名称、销售数量,然后系统查询该药品信息的库存情况。
l若库存有药品且数量足够,则为顾客办理销售手续,从药品基本信息表中获得此药品的价格信息,根据销售数量得到药品的销售金额信息,将顾客的销售药品信息(包括销售编号、药品编号、药品名称、销售价格、销售数量、销售金额、客户名称、销售日期)添加到文件“medicine-sell.dat”中,并修改文件“medicine_stock.dat”中该药品信息的销售数量和库存数量;
l若库存此药品库存数量小于销售数量,则输出药品库存不足信息;
l若库存无此药品,则输出无此药品信息;
注意:
若药品是第一次入库和非第一次入库时库存信息的不同处理。
4)药品退货业务
根据顾客的销售编号信息,办理退货,具体操作过程为:
首先输入客户名称、销售编号、药品编号、退货数量,然后系统查询该药品信息的销售情况。
l若客户名称、销售编号、药品编号存在,且退货数量小于销售数量,且从文件“medicine-sell.dat”中修改该顾客购买药品的退货数量,并修改文件“medicine_stock.dat”中该药品信息的退货数量和库存数量。
l若销售此药品销售数量小于退货数量,则输出药品退货数量大于销售数量的提示;
l若销售无此药品,则输出无此销售药品信息;
5)修改药品基本信息
修改药品基本信息包括添加、删除、查询、退出药品基本信息功能。
另外,在修改药品基本信息前必须输入正确的用户密码才能进入修改药品基本信息菜单进行操作。
注意:
在进行删除操作时注意药品信息的处理,当该药品基本信息有已经有库存信息时,不能删除药品基本信息。
6)修改密码
可以修改用户密码。
7)输出全部药品基本信息、药品入库信息、药品库存信息、药品销售信息。
8)查找指定信息
按照不同查询条件分别输出相应的药品基本信息、药品入库信息、药品库存信息、药品销售信息等,查询到的信息以列表形式显示,要求显示全部符合条件的信息。
l药品基本信息:
用户可以按照药品基本信息的药品编号、药品名称、生产厂家、价格、有效期等信息方式进行查询,查询到的药品基本信息以列表形式全部显示。
l药品入库信息:
用户可以按照药品入库信息的药品编号、药品名称、入库数量、入库日期、入库人进行查询,查询到的入库信息以列表形式全部显示。
l药品库存信息:
用户可以按照药品库存信息的药品编号、药品名称、库存数量、入库数量、退货数量、销售数量等信息进行查询,查询到的药品库存信息以列表形式全部显示。
l药品销售信息:
用户可以按照药品销售信息的销售编号、药品编号、药品名称、销售价格、销售数量、客户名称、销售日期、销售金额、退货数量进行查询,查询到的销售信息以列表形式全部显示。
9)指定信息统计
按照不同条件分别统计相应的药品入库信息、药品库存信息、药品销售信息等,统计的信息以列表形式显示,要求显示统计结果信息。
l药品入库信息:
可以分别按照药品编号、药品名称、入库日期、入库人等不同条件的具体取值进行对入库数量进行统计,并将统计信息输出。
l药品库存信息:
可以按照药品名称的具体取值进行对库存数量、入库数量、退货数量、销售数量进行统计,并将统计信息输出。
l药品销售信息:
可以分别按照药品编号、药品名称、客户名称、销售日期等不同条件的具体取值进行对销售数量、销售金额、退货数量进行统计,并将统计信息输出。
10)退出系统
3.参考资料
1.C语言程序设计(第三版)
2.C语言程序设计函数大全
四、进度安排
进度
目标
第
1
周
l查询资料,整理编写思路。
完成结构体、系统主界面设计
l创建药品基本信息、药品入库信息、药品库存信息、药品销售信息,并放入指定文件中。
l完成基本信息录入、入库
l初步完成程序的结构部分,并对以后的编写有一个理性的认识。
l掌握向文件中保存数据信息
第
2
周
l完成销售
l退货功能
l修改药品基本信息
l修改密码
进行销售、退货、修改药品基本信息和修改密码函数的编写
第
3
周
l输出全部药品基本信息、药品入库信息、药品库存信息、药品销售信息。
l完成查找、统计功能
l退出系统。
l验机、项目总结
进行输出、查询、统计函数的编写,发现编写的问题,以便在今后的编写中,进行解决。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学术 工程 实践