ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:95.82KB ,
资源ID:8623921      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8623921.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(药店药品信息管理系统课程设计报告.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

药店药品信息管理系统课程设计报告.docx

1、药店药品信息管理系统课程设计报告数据结构课程设计题目:药店药品信息管理系统系 别:计算机信息与技术系专 业:计算机科学与技术专业班 级: B130601 学 号: B13060125 学生姓名: 杨晴雯 指导教师: 王 楠 2015年07月1 需求分析1、1 问题描述随着我国医疗事业的发展与社会不同人群的需求,药店的药品层出不穷。这对于消费者来说固然就是好事,可就是对于药店管理者来说,药品种类越多,越不容易记录与查找,还容易出错。所以以前的记录在账本上的方式已经落后了,药店需要一套完备的药店药品信息管理系统,方便药店管理者管理药店,以贴近时代需求,走向现代化管理道路。1、2 需求分析1.建立药

2、品信息表;2.插入新药品信息;3.查询新药品信息记录;4.药品销售;5.显示库存药品信息;6、 退出管理系统2 概要设计2、1 主界面设计当输入相应的操作字符(比如:0-5),通过在主函数中选择并调用对应的子函数程序以及其她函数(比如:菜单函数)中的辅助调用,实现并完成各自的功能操作(比如:添加、查找、删除、显示等)。系统主界面如下:图2、12、2 存储结构设计依据给定的数据格式,药品信息由四个字段来组成,即药品编号、药品名称、药品数量、药品价格。如: 药品编号 | 药品名称 | 药品数量 | 药品价格| 012 感康 36 12 通过C语言把学生的信息用单链表形式连接,源程序要有适当的注释,

3、使程序易于阅读,进行储存。同时进行各种修改,完成信息管理等功能。2、3 系统功能设计依据程序的数据结构与功能,遵照“自顶向下”原则,描述该程序的层次结构,在总体上包括数据的定位、插入、建表、显示、删除等功能模块。(1)定位函数功能:具体了解要插入函数的位置。(2)插入函数功能:找到要插入函数的位置,进行函数插入。(3)显示函数功能:按照指定关键字,对相应商品信息进行查找显示。(4)删除函数功能:查找到要删除商品的相应信息,并将其从表中永久的删除。(5)主函数功能:调用以上子函数,并用开关语句进行选择性的调用。3 模块设计3、1 系统子程序及功能设计LinkList prior(LinkList

4、 L,LinkList p) 定位函数void ListInsert_L(LinkList L,LinkList p) 插入函数 LinkList CreateList_L() 建表void void showlist(LinkList L) 显示函数void deleList(LinkList L,int i) 删除(按序号)void delName(LinkList L,char n) 删除(按名字)int searchnum(LinkList L,int n) 查询(按编号)int searchName(LinkList L,char n) 查询(按名字)3、2 系统功能图图3、14 详

5、细设计4、1 数据类型定义 typedef struct node int num;/药品编号 char name20;/商药品名称 int amount;/药品数量int price;/药品价格 struct node *next;Node,*LinkList;4、2 系统主要子程序详细设计1.定位函数LinkList prior(LinkList L,LinkList p) while(q-next!=p) q=q-next; return(q);2、插入函数void ListInsert_L(LinkList L,LinkList p) while(s!=NULL& p-num=s-nu

6、m)s=prior(L,s);p-next=NULL; s-next=p;s=prior(L,s);p-next=s-next;s-next=p;3、创建函数LinkList CreateList_L()while(num=0) p=(LinkList)malloc(sizeof(node); p-num=num; p-amount=amount; strcpy(p-name,name); p-price=price; ListInsert_L(L,p); 4、显示函数void showlist(LinkList L) if(L=NULL|L-next=NULL) printf(仓库中没有药品

7、n); else while(p-next!=NULL)/不为空的情况下输出表内信息 p=p-next;/不断寻找下一条信息 n+; 5、删除函数(按序号)void deleList(LinkList L,int i) while(p-next&jnext; j+; free(q);6、删除函数(按名称) if(L-next=NULL) else while(p!=NULL) if(!strcmp(p-name,n) p=p-next; deleList(L,sale); elsep=p-next;sale+; 7、查找函数(按名字)int searchName(LinkList L,char

8、 n) if(L-next=NULL|L=NULL) printf(仓库中没有该药品n); else while(p!=NULL) if(!strcmp(p-name,n) p=p-next;sale+; return x;8、查找函数(按编号)int searchnum(LinkList L,int n ) if(L-next=NULL) printf(该链表中没有元素n); else while(p!=NULL) if(p-numnum=n) p=p-next;sale+; return x;2.主函数:主要由switch语句组成,便于函数调用。 switch(choose) case 1

9、:CreateList _L; break; /*增加记录*/ case 2: ListInsert_L(L,p);break; /*插入记录*/ case 3: searchnum(L,name);break; /*查询记录*/ case 4: deleList(L,n); break; /*删除记录*/ case 5: showlist(L);break; /*显示记录*/ case 0:exit();break; /*退出系统*/ 3.主页面函数void main()LinkList L=NULL;system(cls);system (color 4f);printf(n *e欢迎使用

10、药店药品信息管理系统*n);printf(n * 1建立药品信息表 *n);printf(n * 2插入新药品信息 *n);printf(n * 3查询药品信息记录 *n);printf(n * 4药品销售 *n);printf(n * 5显示库存药品信息 *n);printf(n * 0退出管理系统 *n);printf(n *e欢迎使用药店药品信息管理系统*n);printf(n 请选择操作:n); 5 测试分析各功能的运行结果:1)建立信息表:在主菜单中选择1,进入建立信息表图5、12)插入信息:选择2,进行插入信息图5、23)查询药品信息,选择3,进行查询信息图5、34)药品销售,选择

11、4,进行药品销售图5、45)显示库存药品信息,选择5,进行显示图5、56)退出系统:选择0,退出系统。6 源程序清单#include#include#includeint sale;typedef struct node int num; char name20; int amount; int price; struct node * next;node,*LinkList; LinkList prior(LinkList L,LinkList p)/定位函数 LinkList q=L-next; if(L-next=NULL) return(L); else while(q-next!=p

12、) q=q-next; printf(1); return(q);void ListInsert_L(LinkList L,LinkList p)/插入函数 LinkList s=L-next;while(s!=NULL& p-num=s-num) if(s-num=p-num) printf(重复输入n); s=s-next;/已经存在信息if(s=NULL)/空表插入 s=prior(L,s);p-next=NULL; s-next=p;else /寻找位置插入s=prior(L,s);p-next=s-next;s-next=p;LinkList CreateList_L()/建表Lin

13、kList L=(LinkList)malloc(sizeof(node);/给空间L-next=NULL;/初始化LinkList p;int num; char name20;int amount;int price; printf(请输入药品编码:); scanf(%d,&num); printf(请输入药品名称:); char temp=getchar(); gets(name); printf(请输入药品数量:); scanf(%d,&amount); printf(请输入药品价格:); scanf(%d,&price); while(num=0)/重复输入信息的条件 p=(Link

14、List)malloc(sizeof(node); p-num=num; p-amount=amount; strcpy(p-name,name); p-price=price; ListInsert_L(L,p); printf(请输入药品编码:); scanf(%d,&num); printf(请输入药品名称:); char temp=getchar(); gets(name); printf(请输入药品数量:); scanf(%d,&amount); printf(请输入药品价格:); scanf(%d,&price); return(L);void showlist(LinkList

15、L)/显示函数 printf(n - n); printf(n 序号 药品编码 药品名称 药品数量 药品价格 n); printf( - n); LinkList p=L; int n=1; if(L=NULL|L-next=NULL) printf(仓库中没有药品n);/空表 else while(p-next!=NULL)/不为空的情况下输出表内信息 printf( %8d %4d,n,p-next-num); printf( %4s %4d %dn,p-next-name,p-next-amount,p-next-price); p=p-next;/不断寻找下一条信息 n+; print

16、f( - n); void deleList(LinkList L,int i) LinkList p=L; int j=0; while(p-next&jnext; j+; if(!(p-next) printf(删除失败n,i); LinkList q=p-next; p-next=q-next; free(q);int delName(LinkList L,char n) int x=0; LinkList p=L-next; sale=1; if(L-next=NULL) printf(无可删除元素n); else while(p!=NULL) if(!strcmp(p-name,n)

17、 x=1; printf(%s,p-name); p=p-next; deleList(L,sale); elsep=p-next;sale+; if(x) printf(被删除n); return x;int searchName(LinkList L,char n) int x=0; LinkList p=L-next; sale=1; if(L-next=NULL|L=NULL) printf(仓库中没有该药品n); else while(p!=NULL) if(!strcmp(p-name,n) x=1; printf(查找的就是第%d个商品:n,sale); printf(Num:%

18、d Name:%s amount:df Price:%dn,p-num,p-name,p-amount,p-price); p=p-next;sale+; return x;int searchnum(LinkList L,int n) int x=0; LinkList p=L-next; sale=1; if(L-next=NULL) printf(该链表中没有元素n); else while(p!=NULL) if(p-numnum=n) x=1; printf(查找的就是第%d个药品:n,sale); printf(Num:%d Name:%s Amount:%d Price:%d n

19、,p-num,p-name,p-amount,p-price); p=p-next;sale+; return x;void main()LinkList L=NULL;system(cls);system (color 4f);printf(n *e欢迎使用药店药品信息管理系统*n);printf(n * 1建立药品信息表 *n);printf(n * 2插入新药品信息 *n);printf(n * 3查询药品信息记录 *n);printf(n * 4药品销售 *n);printf(n * 5显示库存药品信息 *n);printf(n * 0退出管理系统 *n);printf(n *e欢迎使

20、用药店药品信息管理系统*n);printf(n 请选择操作:n);int x=0; int a; printf(请选择0-5: ); scanf(%d,&a); while(a!=0) switch(a) case 1: printf(建立药品信息表:n); L=CreateList_L(); showlist(L); x=1; break; case 2: if(x=1) int num,amount,price; char name20; printf(请输入药品编码:); scanf(%d,&num); printf(请输入药品名称:); char temp=getchar(); get

21、s(name); printf(请输入药品数量:); scanf(%d,&amount); printf(请输入药品价格:); scanf(%d,&price); LinkList p=(LinkList)malloc(sizeof(node); p-num=num; p-amount=amount; strcpy(p-name,name); p-price=price; ListInsert_L(L,p); printf(插入后:n); showlist(L); break; case 3: int b,n,s; char name20; printf(选择查询方式:n); printf(

22、1、按药品编码查询 2、按药品名称查询n); scanf(%d,&b); if(b=1) printf(n请输入药品编码:); scanf(%d,&n); s=searchnum(L,n); if(s=0) printf(无此药品!n); else if(b=2) printf(n请输入药品名称:); char temp=getchar(); gets(name); s=searchName(L,name); if(s=0) printf(无此药品!n); else printf(无库存!n); break; case 4: int b; printf(请选择删除方式: n); printf(

23、1按药品序号删除 2按药品名称删除n); scanf(%d,&b); if (b=1) int c; printf(请输入药品序号:n); scanf(%d,&c); printf(删除后:n); deleList(L,c); showlist(L); else if(b=2) int f; char name20; printf(请输入药品名称:n); char temp=getchar(); gets(name); f=delName(L,name); if (f!=0) printf(删除后:n); showlist(L); else printf(无该药品!n); else print

24、f(出错!n); break; case 5: printf(剩余药品信息:n); showlist(L); break; case 0: exit (0); printf(请选择0-5: ); scanf(%d,&a); 7 工作总结这周进行了数据结构的课程设计-药店药品信息管理系统,我发现自己在编程方面存在很大问题,面对要求,代码根本无从下手,由于自己C语言能力比较差,写出来的代码调试也存在很多的问题。本次设计单凭自己的能力根本不可能完成,幸亏有老师与同学们的帮助,我才能完成这次设计。这次课程设计给我体会颇深,我深刻认识到自己C语言基础很差,以后要加强基础知识的学习,真正了解问题本身的精髓,特别要提高C语言编程能力,更重要的就是要多进行试验操作,提高自己的动手实践能力。8 参考文献1 史济民,顾春华、 软件工程原理、方法与应用M、 北京:高等教育出版社,2004、 2 张海藩、 软件工程导论M、 北京:清华大学出版社,2005、 3 吴伟民、 数据结构、 北京:清华大学出版社,2013年、

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1