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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

医药管理系统实验报告文档格式.docx

1、1.程序代码完成,编译运行成功。2.数据输入首选采用文件的方式,其次键盘输入。3.分析采用哪种合适的存储结构来储存数据4.设计一定的用户界面,简洁。二、 功能分析1. 功能模块图2. 程序流程图查看 添加 返回 删除 修改 返回 返回 N Y Y N 返回N Y N N 返回 N 返回图2.2 程序流程图三、设计相关代码:#include string.hstdlib.htime.hconio.htypedef struct Drug char Drug_id30; /编号 char Drug_name50; /药品名称 char Drug_type10; /类型 float Drug_pri

2、ce; /价格 int amount; /库存数量 char Drug_time30; /入库时间 char remark30; /备注 struct Drug *next;Drug,*DrugPtr;#define MENU 欢迎进入药品管理系统n 1: 查看已有药品列表n2: 添加新的药品n3: 删除药品信息n4: 修改药品信息n5: 分类查询n0: 退出n 请您选择:#define MENU41 请选择要修改的选项n修改药品名称n修改药品价格n修改药品数量n修改药品类型n修改药品备注n返回主菜单n#define MENU5 欢迎进入分类查询页面n 按编号查询n 按名称查询n 按类型查询n

3、 按价格查询n 按库存数量查询n6: 按入库时间查询n 返回主菜单n#define MENU50 按药品编号查询n请输入要查询的药品编号:#define MENU51 按药品名称查询n请输入要查询的药品名称:#define MENU52 按药品类型查询n 请输入要查询的药品类型:n 中药n 中成药n 西药n 返回查询菜单n#define MENU53 按药品价格查询n请输入要查询的药品价格:#define MENU54 按药品库存数量查询n请输入要查询的药品的库存数量:#define MENU55 按药品入库时间查询n请输入要查询的药品入库时间:#define STRCMP(NAME, STR

4、) strcmp(char *)GetStdin(请输入药品的编号(按0结束):, %s, STR), 0)DrugPtr insert(DrugPtr head, int id, char* name); /添加药品void save_to_file( DrugPtr &yaolist); /将更新后的链表保存到文件中 void read_to_list(DrugPtr & /将文件读入链表void *GetStdin(const char *numstr, char *control, void *ret);DrugPtr getvalue(); /取值void druginsert(Dr

5、ugPtr &yaolist, DrugPtr yao); /插入操作int isdrugin(DrugPtr yaolist, DrugPtr yao); /判断void drugmodify(DrugPtr & /修改操作void deletenode(DrugPtr &yaolist,char drug_id); /删除操作void deletedrug(DrugPtr &void updatedrug(DrugPtr &void listshow(DrugPtr yaolist); /显示操作void drug_find_name(DrugPtr head, char *name);

6、/以名称查询void drug_find_id(DrugPtr head,char *id); /以编号查询void drug_find_type_z(DrugPtr head); /查询中药void drug_find_type_zc(DrugPtr head); /查询中成药void drug_find_type_x(DrugPtr head); /查询西药void drug_find_price(DrugPtr head,float price); /以价格查询void drug_find_amout(DrugPtr head,int amout); /以库存数量查询void drug_

7、find_time(DrugPtr head,char *time); /以入库时间查询void drug_type_choose(DrugPtr head); /查询主菜单void choose_type(DrugPtr head); /类型查询int main() int choice; DrugPtr head=NULL; DrugPtr yao; read_to_list(head); while (*(int *)GetStdin(MENU, %d, &choice) switch (choice) case 1: listshow(head);/显示药品列表 break; case

8、 2: yao=getvalue(); druginsert(head,yao);/添加药品 printf(药品添加成功n); break; case 3: deletedrug(head);/删除药品 case 4: updatedrug(head);/修改药品信息 case 5: /分类查询 drug_type_choose(head); case 0: /退出 save_to_file(head);return 0;void *GetStdin(const char *numstr, char *control, void *ret)cputs(numstr); while (! sca

9、nf(control, ret) fflush(stdin); system(cls cputs(numstr); return ret; /显示列表void listshow(DrugPtr yaolist) printf (%5s%8s%16s%10s%14s%13s%7sn药品编号名称价格类型入库时间,库存数量备注 DrugPtr p=yaolist; if(!p) printf(kong while(p) printf(%-10s%-18s%-10.2f%-10s%-13s%-10d%-10sn,p-Drug_id,p-Drug_name,p-Drug_price,p-Drug_typ

10、e,p-Drug_time,p-amount,p-remark); p=p-next;DrugPtr getvalue() DrugPtr yao=(DrugPtr)malloc(sizeof(Drug);请输入药品编号: scanf(,&yao-Drug_id);请输入药品名称:Drug_name);请输入药品价格:%fDrug_price);请输入药品数量:amount);请输入药品入库时间:Drug_time);请输入药品类型:Drug_type);请输入药品备注: yao-next=NULL; return yao;yaolist, DrugPtr yao) if(!yaolist)

11、yaolist=yao; else yao-next=yaolist- yaolist-next=yao;DrugPtr isdrugin(DrugPtr yaolist,char drug_id) DrugPtr p=yaolist; while(p) if(!strcmp(p-Drug_id,drug_id) break; else p=p- return p; /更新结点 float t=0;/没有这句出现float point not loaded while(*(int *)GetStdin(MENU41, switch(choice) case 1: GetStdin(请输入药品的

12、新名称:,yao- cputs(更新成功!请继续选择n break; case 2:请输入药品的新价格: case 3:请输入药品的修改数量: case 4:请输入药品的新类型: case 5:请输入药品的新备注: case 0: /找到结点返回 update char string30; while (strcmp(char *)GetStdin(请输入药品编号(按0结束):, string), ) yao=isdrugin(yaolist,string); if(yao)/判断药是否存在 drugmodify(yaolist,yao); printf(没有这种药n while (STRCM

13、P(SECOND, string) if (isdrugin(yaolist, string) deletenode(yaolist, string); else printf(药品不存在!yaolist,char drug_id) DrugPtr q,p; q=yaolist; p=q-strcmp(yaolist- yaolist=yaolist- free(q); while(p) if(! q=q- q-next=p- free(p);药品已删除!FILE *fp=fopen(E:/yao.txtrfp)error while( !feof(fp) DrugPtr yao=(DrugP

14、tr)malloc(sizeof(Drug); yao- fscanf(fp,%s%s%f%s%s%d%snDrug_id,yao-Drug_name,&Drug_price,yao-Drug_type,yao-Drug_time,&amount,yao- druginsert(yaolist,yao); fclose(fp);void save_to_file(DrugPtr & FILE *fp=fopen(w fprintf(fp,%-5s%-18s%-10.2f%-10s%-13s%-6d%-10snvoid drug_find_name(DrugPtr head, char *nam

15、e) DrugPtr cur,p; p=head; cur = head; int i=0;Drug_name,name) if(p) while(cur!=NULL)strcmp(cur- printf(,cur-Drug_id, cur-Drug_name, cur-Drug_price,cur-Drug_type,cur-Drug_time,cur-amount,cur- i+; cur=cur-所有名称为%s的数量为%dn,name,i); printf(没有找到该药名!void drug_find_type_z(DrugPtr head)DrugPtr cur,p;Drug_type,中药Drug_type, Drug_id,cur-Drug_name,cur- cur=cur-所有中药的数量为%dn,i);没有该类型的药!void drug_find_type_zc(DrugPtr head)中成药 while(cur! if(!所有中成药的数量为%dnvoid drug_find_type_x(DrugPtr head)西药 while(cur!所有西药的数量为%dn

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2