c++课程设计实验报告.doc_第1页
c++课程设计实验报告.doc_第2页
c++课程设计实验报告.doc_第3页
c++课程设计实验报告.doc_第4页
c++课程设计实验报告.doc_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、学号高级程序设计语言C+课程设计设计说明书天津城建大学医院药品管理信息系统起止日期:201年7月6日至201年7月17日学生姓名班级成绩指导教师(签字)计算机与信息工程学院201年 7月6日目录1、设计目的12、总体设计13、详细设计:23.1 、程序具体功能23.2 、调试分析24、源程序和运行结果34.1 、源程序34.2 、运行结果164.3 、心得体会24天津城建大学医院药品管理信息系统1、 设计目的1 通过实验实现对学生信息系统的管理操作;2 进一步掌握和利用C+进行程设计的能力 ;3 进一步理解和运用结构化程序设计的思想和方法;4 初步掌握开发一个小型实用系统的基本方法;5 学会利

2、用流程图或N-S 图表示算法 ;6 掌握书写程设计开发文档的能力(书写课程设计报告);2、总体设计天津城建大学药品管理信息系统录 入浏 览按 ID药 品药 品修 改信息信息药 品按 ID或 生产 商查询药品信息读 取保 存按 ID药 品药 品删 除信息信息药 品按 ID大 小给 药品 排序信息信息3、详细设计:3.1 、程序具体功能:、录入 (按照提示录入药品信息) ;、浏览(选择操作,就可以浏览药品的具体信息);、修改(输入一个药品的ID 号码,修改其编号);、查询 (按输入的 ID 号码或者根据生产商查询相应的药品信息);、读取(选择相应操作,对文件中的信息进行读取);、保存(选择相应操作

3、保存文件中的信息);、删除(按照输入的ID 号删除对应的 ID 的药品信息);、排序(选择相应的排序方式进行升序或降序);3.2 、调试分析上机调试之前我们对所编的程序作了纸面上的检查,先改正一些不该犯错误,如 没有搭配完整,漏写,拼写错误等,这些都是我们通过认真的态度在运行之前可以解决、避免的。而且还可以减少机器时间。往往一连串的错误是由于漏写或写错一个字符引起的。在上机调试过程中,对文件这一节的知识还不够熟悉,所以在解决输入输出流的过程中出了很多问题。问题如下:1. 文件进行保存否知道:2. 文件读取功能实现不了,进行此操作无反应:3. 项目的录入数量明明设置了为 n,所以的操作都是以 n

4、 作为条件进行,但是为什么输入超过两个的时候系统就发生了错误:4. 对于修改功能,其他的信息都能够进行顺利的修改,但是选题类型修改后输出的还是之前的,而没有进行修改:4、源程序和运行结果4.1 、源程序#include #include #include using namespace std;class Dateprivate:int year,month,day;public:void display();int get_year();/ 获取 year 值int get_month();/ 获取 month 值int get_day();/ 获取 day 值void set_year()

5、;/ 设置 year 值void set_month();/ 设置 month 值void set_day();/ 设置 day 值void set_all(int y,int m,int d);void Date:set_all(int y,int m,int d)year = y;month = m;day =d ;void Date:display()coutyear 年 month 月 day 日endl;int Date:get_year()return year;int Date:get_month()return month;int Date:get_day()return da

6、y;void Date:set_year()coutendlyear;void Date:set_month()coutmonth;void Date:set_day()coutday;class Drugpublic:Drug();Drug(int n,string na,string lb,string scs,string jx,float zl,string gg,Date d);/ 举个例子吧, 某药品, 0.2mg/支, 10ml/ 支, 10 支 /盒。那 0.2mg 就是规格。/某药品, 0.。 1mg/粒, 10 支 /盒。 0.1mg 就是规格。Drug();void in

7、put_Drug();void output_Drug();int get_num();/ 获取药品编号string get_name();string get_LB();string get_SCS();string get_JX();float get_ZL();string get_GG();void set_num(int xnum);/ 设置编号Date get_date();void set_allE(int n,string na,string lb,string scs,string jx,float zl,string gg,int year, int month,int d

8、ay);private:int num;string name;string LB;/ 药品类别string SCS;/ 生产商string JX;/ 剂型float ZL;/ 装量string GG;/ 规格Date date;/生产日期;string Drug:get_name()return name;int Drug:get_num()return num;Date Drug:get_date()return date;string Drug:get_LB()return LB;string Drug:get_JX()return JX;floatDrug:get_ZL()return

9、 ZL;string Drug:get_GG()return GG;void Drug:set_allE(int n,string na,string lb,string scs,string jx,float zl,string gg,int year, int month,int day)num=n;name=na;LB=lb;SCS=scs;JX=jx;ZL=zl;GG=gg;date.set_all(year,month,day);Drug:Drug()num=0;name= ;LB= ;SCS= ;JX= ;ZL=0;GG= ;void Drug:input_Drug()coutnu

10、m;coutname;coutLB;coutSCS;coutJX;coutZL;coutGG;cout 生产日期:;date.set_year();date.set_month();date.set_day();void Drug:output_Drug()cout药品编号 -药名 -类别 -生产商 -剂型- 装量 - 规格 - 生产日期 endl;coutnumttnametLBtSCStJXtZLtGGtdate.get_year()-date.get_month()-date.get_day()endl;string Drug:get_SCS()return SCS;void Drug:

11、set_num(int xnum)num=xnum;Drug:Drug(int n,string na,string lb,string scs,string jx,float zl,string gg,Date d):num(n),name(na),LB(lb),JX(jx),ZL(zl),GG(gg),date(d)Drug:Drug()class DrugSysprivate:Drug e1000;int m;/ 要输入数据的个数public:DrugSys();void menu();/ 显示菜单void input_all();/ 输入所有药品信息void output_all();

12、/ 输出所有药品信息void modify_num();/ 修改指定药品IDint search_num();int search_name();/ 查找指定药品编号int search_SCS();void read_fromfile();void save_tofile();void op();/ 所有操作void DrugSys:delete_Drug();/ void DrugSys:sort_ID_Drug();删除/按ID进行排序;DrugSys:DrugSys()void DrugSys:menu()system(color F1); coutendl;cout*endl;cou

13、t*endl;cout*欢迎进入天津城建大学药品信息管理系统*endl;cout*endl;cout*endl;coutendl;cout-endl;cout|主菜单|endl;cout|endl;cout|endl;cout|1、药品信息的录入|endl;cout|2、药品信息的显示|endl;cout|3、修改药品的 ID 信息|endl;cout|4、通过快捷功能进行药品查询|endl;cout|5、读取信息|endl;cout|6、保存信息|endl;cout|7、删除药品功能|endl;cout|8、排序功能|endl;cout|9、退出|endl;cout-endl;coutend

14、lendlendl;void DrugSys:input_all()coutm;for(int i=0;im;i+)ei.input_Drug();void DrugSys:output_all()for(int i=0;im;i+)ei.output_Drug();voidDrugSys:modify_num()/ 修改函数int i=search_num();if(im)int xnum;coutxnum;ei.set_num(xnum);ei.output_Drug();int DrugSys:search_name()/ 按姓名查询功能string searchname;coutsea

15、rchname;for(int i=0;i=m)coutnot find;return i;int DrugSys:search_num()/ 按 ID 查询功能int searchnum;coutsearchnum;for(int i=0;i=m)coutnot find;return i;int DrugSys:search_SCS()/ 按生产商查询功能string searchSCS;coutsearchSCS;for(int i=0;i=m)coutnot find;return i;void DrugSys:read_fromfile()/读取功能int num;string na

16、me;string LB;/ 药品类别string SCS;/ 生产商string JX;/ 剂型float ZL;/ 装量string GG;/ 规格int year,month,day;ifstream infile(Drug.txt,ios:in);if(!infile)cerrerr!m;for(int i=0;inumnameLBSCSJXZLGGyearmonthday; ei.set_allE(num,name,LB,SCS,JX,ZL,GG ,year,month,day);infile.close();DrugSys:output_all();void DrugSys:sav

17、e_tofile()/ 保存功能ofstream outfile(Drug.txt,ios:out);if(!outfile)cerrerr!endl;exit(1);outfilemendl;for(int i=0;im;i+)outfileei.get_num()ei.get_name()ei.get_LB()ei.get_SCS()ei.get_JX();outfileei.get_ZL()ei.get_GG()ei.get_date().get_year()ei.get_date().get_month()ei.get_date().get_day()endl;outfile.clos

18、e();void DrugSys:op()while(1)menu();coutn;switch(n)case 1:input_all();break;case 2:output_all();break;case 3:modify_num();break;case 4: cout1 、通过药品名进行查询cout2 、通过生产商进行查询endl;endl;cout 请选择输入快捷查询的序号a;if(a=1)search_name();break;if(a=2)search_SCS();break;case 5:read_fromfile();break;case 6:save_tofile();

19、break;case 7:DrugSys:delete_Drug();break;case 8:DrugSys:sort_ID_Drug();break;case 9:exit(0);break;voidDrugSys:delete_Drug()/删除功能int d,i;char c;coutd;for( i=0;im;i+)if(ei.get_num()=d)cout 该药品的具体信息如下:=m)cout 对不起,您所查找的药品不存在哦!endl;for( i=0;im;i+)if(ei.get_num()=d)cout -endl;cout |温馨提示:您确定真的需要删除该项目吗?cout -endl;couta.确定删除endl;coutb.取消删除endl;coutc;if(c=a)|endl;for(d=i;dm-1;d+)ei=ei+1;m-;cout 删除成功!endl;if(c=b)exit(1);cout现在将退出系统!;void DrugSys:sort_ID_Drug()/按 ID 进行排序char choose;cout 请选择: a-升序b-降序 choose;int j,i,k;Drug t;if(choose=a)for(i=0;im-1;i+)k=i;for(j=i+1;jm;j+)if(ej.get_num()

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论