分享
分销 收藏 举报 申诉 / 23
播放页_导航下方通栏广告

类型c专业课程设计药品信息标准管理系统.doc

  • 上传人:精****
  • 文档编号:2864536
  • 上传时间:2024-06-07
  • 格式:DOC
  • 页数:23
  • 大小:497.04KB
  • 下载积分:10 金币
  • 播放页_非在线预览资源立即下载上方广告
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    专业课程 设计 药品信息 标准 管理 系统
    资源描述:
    辽 宁 工 业 大 学 《C++语言程序设计》课程设计(论文) 题目: 药品信息管理系统 院(系): 软 件 学 院 专业班级: 学 号: 学生姓名: 指导老师: 翟宝峰 老师职称: 副教授 起止时间:.12.22-.1.2 课程设计(论文)任务及评语 院(系):软件学院 教研室:软件教研室 学 号 学生姓名 专业班级 课程设计(论文)题目 药品信息管理系统 课程设计(论文)任务 程序设计任务和要求: (1). 掌握面向对象程序设计语言C++基础语法 (2). 掌握C++面向对象设计思想 (3). 掌握VC++6.0和DEV C++ 开发工具使用 (4). 利用标准C++规范设计应用程序 设计过程中,要严格遵守设计时间安排,听从指导老师指导。正确地完成上述内容,规范完整地撰写出设计汇报。 指导老师评语及成绩 成绩: 指导老师签字: 1 月 4日 目 录 第1章 课程设计目标和要求 1 1.1设计目标 1 1.2试验环境 1 1.3预备知识 1 1.4设计要求 1 第2章 课程设计内容 2 2.1 课题描述 2 2.2 系统设计 2 2.2.1功效分析 2 2.2.2面向对象设计 2 2.2.2类组员描述 4 2.3程序实现 5 2.3.1源码分析 5 2.3.2运行结果 13 第3章 总结 15 参考文件 16 第1章 课程设计目标和要求 1.1设计目标 将理论教学中包含到知识点贯穿起来,对不一样数据类型、程序控制结构、数据结构作一比较和总结,结合设计题目进行综合性应用,对所学知识达成融会贯通程度。 经过课程设计,学生在下述各方面能力应该得到锻炼: (1)深入巩固、加深学生所学专业课程《C++语言教程》基础理论知识,理论联络实际,深入培养学生综合分析问题,处理问题能力。 (2)全方面考评学生所掌握基础理论知识及其实际业务能力,从而达成提升学生素质最终目标。 (3)利用所学知识,开发小型应用系统,掌握利用C++语言编写调试应用系统程序,训练独立开发应用系统,进行数据处理综合能力。 (4)对于给定设计题目,怎样进行分析,理清思绪,并给出对应数学模型。 (5)掌握面向对象程序设计方法。 (6)熟练掌握C++语言基础语法,灵活利用多种数据类型。 (7)深入掌握在集成环境下怎样调试程序和修改程序。 1.2试验环境 硬件要求能运行Windows 操作系统微机系统。C++语言应用程序开发软件使用:VC++ 系统,或其它C++语言应用程序开发软件。 1.3预备知识 熟悉C++语言程序设计基础知识及VC++编辑器使用方法。 1.4设计要求 1.仔细分析设计题目,画出程序步骤图,编写程序源代码。 2.主动上机调试源程序,增强编程技巧和调程能力。 3.认真书写课程设计预习汇报,课程设计说明书。 4.遵守课程设计要求和机房管理制度,服从指导老师安排,确保课程设计顺利完成课程设计内容。 第2章 课程设计内容 2.1 课题描述 在中国,伴随医药卫生体制改革深入,医药连锁经营推行和日趋猛烈商业角逐,越来越多医药经营企业意识到提升企业管理水平关键性,也迫切要求加紧管理信息化进程。 在医药行业中,医药经营企业物流管理和对应财务处理、信息处理,长久以来一直采取手工操作,但伴随产业结构调整、全新市场竞争环境,药品企业管理和运行效率已经成为企业成败关键所在,手工方法弊端毕现无遗。这就要求医药管理摆脱过去人手操作烦琐,充足满足了医药经营企业多种需求,从医药经营企业各个步骤对人流、物流、资金流、信息流进行统一系统管理。市场需求和技术支持,最终会造成越来越多优异医药管理软件出现,并在竞争中得到不停完善和优化。 本系统以C++语言实现了药品信息管理:库存管理、药品管理和出库入库管理。 2.2 系统设计 2.2.1功效分析 这是一个相关小刚药品信息管理系统,含有输入、显示、修改、查询、删除数据等功效,用户使用时,进入主菜单选择界面,选择想要进行操作; 1.输入信息,输入数字“1”,增加药品信息 2.显示全部药品信息,输入数字“2”,将全部药品信息以列表输出 3.查找药品信息,输入“3”,回车确定操作,输入要修改ID号 4.修改药品信息,输入“4”回车确定操作,系统显示修改页面,将需修改药品息输入,输入完后回车确定 5.删除药品信息,输入“5”,回车确定操作,系统显示“输入删除药品ID号,输入要删除药品号,系统将保留数据删除 6.退出系统,输入“0”,回车确定操作,退出系统。 2.2.2面向对象设计 类设计:使用面向对象程序设计进行分析,整个系统包含两大类可操作,仓库、药品。所以系统关键包含两大类:药品仓库类、药品类。 系统框架就是仓库类和药品类定义;主函数中定义一个仓库对象,循环显示主菜单并依据用户选择调用仓库类对应方法(组员函数)。 考虑系统操作药品信息含有不确定性,所以考虑使用链表保留、处理药品信息。仓库类包含:全部药品信息一个不带头结点链表及能够对药品信息进行增,改,删除,查询,数量设置,数据存盘等操作相关模块为组员函数。全部药品全部含有公共信息及操作能够使用仓库类进行描述。 图2.1系统中uml类图之间关系 小刚药品信息管理系统 增加药品信息 查看药品信息 退出系统 药品信息 药品分类信息 按名称查询 按类别查询 增加药品库存信 修改药品信息 直接退出 增加、删除药品信息 图2.2总体步骤图 2.2.2类组员描述 a.药品管理员类: class admin { public: admin(); private: string name; }; b.药品仓库货架类: class shelf { public: shelf(); private: admin men;//管理员 string storeNo;//药品仓库编号 string kinds;//药品大类 string shelfNo;//药品货架号 }; 函数组员描述和函数功效:  1、void input()经过函数输入药品信息  2、void output()经过函数输出药品信息  3、Node()经过函数使指针指向下个地址  4、List()经过函数使指针指向首地址  5、void addNode()经过函数添加药品信息  6、void XSNode()经过函数显示药品全部信息  7、void queryNode1(char *TName)经过函数查询药品信息  8、void queryNode2(char *TName)同上  9、void delNode(char *TName)经过函数删除药品信息  10、void saveList()经过函数储存药品信息  11、ofs.open("data.txt");经过函数输出文本文件  12、ifs.open("data.txt");经过函数输入文本文件  13、~List()通数过定义析构函数,释放空间  2.3程序实现 2.3.1源码分析 #include<stdio.h> #include<stdlib.h> #include<conio.h> void input(); /*输入*/ void display(); /*显示*/ void search(); /*查找*/ void amend(); /*修改*/ void delete_slf(); /*删除*/ void list(); /*菜单*/ struct stud /*定义药品属性数组*/ { long num; /*药品编号*/ char name[20]; /*药品名字*/ float price; /*药品价格*/ int godsnum; /*药品数量*/ }infom; class SP/*定义个药品类*/ void input() /*输入信息函数*/ { FILE *fp; /*定义文件指针*/ char numstr[20],ch; if((fp=fopen("c:\\123.dat","wb"))==NULL) { exit(0); } do { getchar(); printf("\n\t\tenter num:"); gets(numstr); /*接收字符并存入数组中*/ infom.num=atol(numstr); /*把字符型转换成整型*/ printf("\n\t\tenter name:"); gets(infom.name); printf("\n\t\tenter price:"); gets(numstr); infom.price=atof(numstr); /*把字符型转换成float型*/ printf("\n\t\tenter godsnum:"); gets(numstr); infom.godsnum=atoi(numstr); /*把字符型转换成整型*/ fwrite(&infom,sizeof(infom),1,fp); printf("\n\t\tinput continue(y/n)?"); ch=getchar();getchar(); }while(ch=='Y'||ch=='y'); fclose(fp); } void display() /*显示信息函数*/ { FILE *fp; char ch; int x; float f; if((fp=fopen("c:\\123.dat","rb"))==NULL) { printf("\nCannt open file!\n"); getch(); exit(1); } while(fread(&infom,sizeof(struct stud),1,fp)==1) { printf("\n\tnum:%ld",infom.num); printf("\n\tname:%s",infom.name); printf("\n\t\price:%.3f",infom.price); printf("\n\t\godsnum:%d",infom.godsnum); } fclose(fp); } void search() /*查询信息函数*/ { FILE *fp; int x; long y; char ch; if((fp=fopen("c:\\123.dat","rb"))==NULL) { printf("\nCannot open file!\n"); getch(); exit(1); } do { printf("\nplease input recond num:"); scanf("%d",&x); y=(x-1)*sizeof(infom); rewind(fp); /*把指针移回文件开始*/ if(fseek(fp,y,0)!=0)/*把指针指向Y*/ { printf("can not move there!\n"); exit(1); } fread(&infom,sizeof(infom),1,fp); printf("num:%ld\n",infom.num); printf("name:%s\n",infom.name); printf("price:%f\n",infom.price); printf("godsnum:%d",infom.godsnum); ch=getchar();getchar(); }while(ch=='Y'||ch=='y'); fclose(fp); } Class KF /*定义一个药品库房类 */ void amend() /*修改信息函数*/ { FILE *fp1 ,*fp2; int flag; long ch; char f; char temp[10]; do { if((fp1=fopen("c:\\123.dat ","rb")) ==NULL) { printf("\tCan not open the inform file!"); getch(); exit(1); } if((fp2=fopen("c:\\456.dat","wb")) == NULL) { printf("\tCan not open the temp file!"); getch(); exit(1); } printf("please input the num you want to amend:"); getchar(); scanf("%ld",&ch); flag=0; while(fread(&infom,sizeof(infom),1,fp1)==1) { if(ch==infom.num) { printf("\n\nPlease input the new information:\n"); printf("\tnum:");getchar();gets(temp); infom.num=atol(temp); printf("\tname:"); gets(infom.name); printf("\tprice:"); gets(temp); infom.price=atof(temp) printf("\tgodsnum:"); gets(temp); infom.godsnum=atoi(temp); getchar(); flag=1; } fwrite(&infom,sizeof(infom),1,fp2); } fclose(fp1); fclose(fp2); if(flag == 1) { printf("amend success!\n"); remove("c:\\123.dat"); rename("c:\\456.dat","c:\\123.dat"); } else printf("Can not find this record!\n"); printf("amend any more ?(Y/N): [ ]\b\b"); f=getchar(); getchar(); }while (f=='Y'||f=='y'); } void delete_slf() /*删除信息函数*/ { FILE * fp1,* fp2; int flag=0; /*定义一个标识*/ long ch; char f; char temp[10]; do { if((fp1=fopen("c:\\123.dat","rb"))==NULL) { printf("\tCan not open the inform file!"); getch(); exit(1); } if((fp2=fopen("c:\\456.dat","wb"))==NULL) { printf("\tCan not creat the temp file!"); getch(); exit(1); } printf("Please input the num you want to delete:"); getchar(); scanf("%ld",&ch); while(fread(&infom,sizeof(infom),1,fp1)==1) { if(ch==infom.num) { flag=1; } else fwrite(&infom,sizeof(infom),1,fp2); /*分配一段内存空间&infom是首地址*/ } fclose(fp1); fclose(fp2); if(flag==1) { printf("Delete success!\n"); remove("c:\\123.dat"); /*删除文件123*/ rename("c:\\456.dat","c:\\123.dat"); /*对文件456重命名*/ else printf("Can not find this record!\n"); printf("Delete any more?(Y/N):[ ]\b\b"); f=getchar(); getchar(); }while(f=='Y'||f=='y'); } void list() /*选择功效函数*/ { int x; while(1) { system("cls"); printf("\t\t /\~~~~~~~~~~~~~\   ▓  ^*^   ☆  $$  .☆\n");/*软件界面*/ printf("\t\t ./ \~~~▓~  ~~~~\ ◆   ☆感谢使用小刚药品信息管理系统☆  \n"); printf("\t\t / ^^ \ ══════\.◆    工作人员 \n"); printf("\t\t ..▎[] ▎田 田 ▎ |┃◆    ★ 姓名:王宏刚 \n"); printf("\t\t &&▎  ▎    ▎'|'▎ @   ★  学号:  \n"); printf("\t\t# ■■■■■■■■■■〓▄▃▂▁★ 辽宁工业大学软件学院 ︸|| \n"); printf("\t\t',你说过会同我一起使用!','╱╱★╱☆\n"); printf("\t\t╭⌒','╭ ⌒╮ ╱ ╱╱ ╱ ☆ ╱★╱\n"); printf("\t\t ',' ',' ',' ','☆  ╱★ ╱╱ \n"); printf("\t\t\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\n"); printf("\t\t\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\n"); printf("\t\t\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\n\n"); printf("\t\t 请选择功效: \n"); printf("\t\t******* ╭☆☆˙ We1come. *******\n"); printf("\t\t*******┊╭⌒ ╭⌒╮1.输 入 药品 信 息*******\n"); printf("\t\t*******┊ ︶  ︶︶     *******\n"); printf("\t\t*******┊╭⌒ ╭⌒╮  ◣◤ *******\n"); printf("\t\t*******┊ ︶  ︶︶ ◢◥ *******\n"); printf("\t\t*******┊╭⌒ ╭⌒╮2.显 示 药品 信 息*******\n"); printf("\t\t*******┊ ︶  ︶︶  *******\n"); printf("\t\t*******┊╭⌒ ╭⌒╮ (▔◎▔) *******\n"); printf("\t\t*******┊ ︶  ︶︶ ╱│││╲ *******\n"); printf("\t\t*******┊╭⌒ ╭⌒╮3.查 找 药品 信 息*******\n"); printf("\t\t*******┊ ︶  ︶︶ *******\n"); printf("\t\t*******┊╭⌒ ╭⌒╮ ╭⌒⌒のˊ *******\n"); printf("\t\t*******┊ ︶  ︶︶ ( . .)ˋ *******\n"); printf("\t\t*******┊╭⌒ ╭⌒╮4.修 改 药品 信 息*******\n"); printf("\t\t*******┊ ︶  ︶︶ *******\n"); printf("\t\t*******┊╭⌒ ╭⌒╮ ╱╲╲ *******\n"); printf("\t\t*******┊ ︶  ︶︶ ╲╲╱ *******\n"); printf("\t\t*******┊╭⌒ ╭⌒╮5.删 除 药品 信 息*******\n"); printf("\t\t*******┊ ︶  ︶︶ *******\n"); printf("\t\t*******┊╭⌒ ╭⌒╮ ∴°★.☆° *******\n"); printf("\t\t*******┊ ︶  ︶︶ .°∴°★ *******\n"); printf("\t\t*******┊╭⌒ ╭⌒╮0.退 出 管理 程 序*******\n"); printf("\t\t******* ┊ ︶  ︶︶ *******\n"); printf("\t\t\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\n"); printf("\t\t\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\1\n"); printf("请 选 择 功 能:"); scanf("%d",&x); if(x>=0&&x<=5) /*功效选择函数*/ { switch(x) { case 1:input(); break; case 2:display(); break; case 3:search(); break; case 4:amend(); break; case 5:delete_slf(); break; case 0:exit(0); } printf("\n\nsuccess. \nPress any key to continue......\n");getch(); } else printf("\n\nfail.choose again\n\n"); } } void main() /*主函数*/ { printf("\n\n\n\n\n\n\n\n\n\n"); list(); } 2.3.2运行结果 程序调试正确无误后,进入使用后,出现界面则为正确展现形式,在界面上输入需要功效模块代码,将显示所需界面,以下系列图所表示 1. 系统首页图: 图2.3 2. 程序输入时界面图以下图 图2.4 3. 药品信息显示图: 图2.6 第3章 总结 经过此次C++课程设计,收获还是很多,从刚刚拿到课程设计题目后,我就先分析这个程序部分基础功效,从这些基础功效出发来定下一个程序大致框架结构,这里面关键包含程序中所设计类,类和类之间继承关系和部分关键函数设计思想。比如:删除统计函数、增加统计函数等等。从一开始我就从图书馆借阅了不少其它相关c++资料,这些全部是很宝贵参看资料,能够说给我最终顺利完成程序编写打下了很扎实基础 这次课程设计,是自己独立完成了一个相对比较大程序,里面用到面向对象知识也是比较多,经过一番实践,很好总结、强化了之前学习过知识关键点,而且也发觉了自己还没好好掌握知识点,对于没掌握,我查阅了参考书籍立即补上。感觉代码写到也是以后,状态越好,我感觉是因为自己对于部分基础知识比很好掌握了。有些问题即使没碰到过,不过经过查阅资料,只要了解了它们使用方法,自己就能够很快模拟下来,不是照抄。这一点我认为在以后程序设计中也是蛮关键,因为我发觉要写出好程序,首先应该去学习人家程序,看懂她们程序而且转化为自己。其次才有可能去创新。 参考文件 1.郑莉、董渊 编着 《C++语言程序设计》 北京:清华大学出版社 2.黄迪明 主编 《C++语言程序设计基础》 北京:电子工业出版社 3.钱能 主编 《C++程序设计教程》 北京:清华大学出版社 4.钱能 C++程序设计教程 清华大学出版社,1999年 5.吴访升 编着 《C++程序设计》 北京: 机械工业出版社 6.Decoder 主编 《C/C++程序设计》 北京:中国铁道出版社 7.谭浩强 C语言程序设计(第二版)清华大学出版社, 8.吴文虎 程序设计基础 清华大学出版社, 9.钱启平 C语言程序设计基础教导教程 铁道出版社, 10.徐孝凯 编着 《C++语言程序设计》 北京:清华大学出版社
    展开阅读全文
    提示  咨信网温馨提示:
    1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
    2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
    3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
    4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
    5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
    6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

    开通VIP折扣优惠下载文档

    自信AI创作助手
    关于本文
    本文标题:c专业课程设计药品信息标准管理系统.doc
    链接地址:https://www.zixin.com.cn/doc/2864536.html
    页脚通栏广告

    Copyright ©2010-2026   All Rights Reserved  宁波自信网络信息技术有限公司 版权所有   |  客服电话:0574-28810668    微信客服:咨信网客服    投诉电话:18658249818   

    违法和不良信息举报邮箱:help@zixin.com.cn    文档合作和网站合作邮箱:fuwu@zixin.com.cn    意见反馈和侵权处理邮箱:1219186828@qq.com   | 证照中心

    12321jubao.png12321网络举报中心 电话:010-12321  jubao.png中国互联网举报中心 电话:12377   gongan.png浙公网安备33021202000488号  icp.png浙ICP备2021020529号-1 浙B2-20240490   


    关注我们 :微信公众号  抖音  微博  LOFTER               

    自信网络  |  ZixinNetwork