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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

诊所信息管理系统C++课程设计报告.docx

1、诊所信息管理系统C+课程设计报告 课程设计成果 学院: 计算机工程学院 班 级: 学生姓名: 学 号: 设计地点(单位) B5-101 ERP实验室 设计题目: 诊所信息管理系统设计 完成日期:2016 年 6 月 25 日 指导教师评语: 成绩(五级记分制): 教师签名: 1需求分析随着经济的迅速发展,人们的生活水平得到显著提高。医疗服务行业也在人们生活中占据了最重要的一环,随着医改的实施,看病难,看病贵的问题得到了解决,所以为了存储患者信息以及医生信息,为了小型诊所管理的正规化,方便化,诊所信息管理系统在此背景下诞生。面对发展的需要通过专门的管理系统来系统化、规范化以及高效地实现小型诊所管

2、理。并且随着计算机技术的快速发展,计算机的应用逐渐普及和深入,同时计算机软件的需求特日益增长,C+语言是当前最流行的和实用的计算机程序语言。模拟诊所信息管理系统就是对存储患者信息以及医生信息在个人PC上的编程实现。本系统采用了用户身份的注册、登陆、增加信息、查询信息、帐单信息以及统计所有患者的总费用等功能。并分析在现实生活中遇到的问题并得到解决。1.1 问题描述完成小型诊所的简单信息管理程序,掌握类的设计以及继承和派生的应用。1.2 主体功能设计人类(Person类)和医生类(Doctor类),在此基础上,通过增加患者和账单,使它们公用于表示一家诊所的信息管理。(1)在一条医生记录中,包括医生

3、的专业说明(specialty),如内科医生(surgeon)、儿科医生(pediatrician) 、产科医生(obstetrician)及全科医生(general practitioner)。(2)Doctor记录还含有诊费(office_vist_fee)。(3)在一条患者记录中,包括该患者产生的药费(drug_fee) ,患者的诊费(即医生的诊费)。(4)在一条账单记录中,包括一条患者对象、该患者对应得主治医生、该患者产生的诊费和药费。(5)应用程序能够显示出诊所中每个患者的信息和对应主治医生的信息。(6)能够统计出所有患者的总费用。1.3 问题的解决方案根据系统功能要求,可以将问题解

4、决分为以下步骤: (1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;(2)分析系统中的各个实体及它们之间的关系; (3)根据问题描述,设计系统的类层次; (4)完成类层次中各个类的描述; (5)完成类中各个成员函数的定义; (6)完成系统的应用模块; (7)功能调试;(8)完成系统总结报告。1.4开发环境开发系统:Windows 系统,处理器要求最低奔腾处理器,内存32m,建议在i5处理器,128m内存配置下调试。编译集成软件:Microsoft Visual C+ 6.0编译器。Microsoft Visual C+ 6.0编译器。是一个强大的C/C+软件开发工具,操作简单,

5、使用非常广泛,为很多程序员的首选开发工具。2 概要设计2.1 数据设计2.1.1 类设计分别定义了person人类、doctor医生类、HuanZhe患者类以及帐单类;在person人类中,包含了数据成员姓名(name)、性别(sex)、年龄(age)以及诊费(office_vist_fee);在doctor医生类中,增加了数据成员医生的专业说明(drug_fee),包含了成员函数input()增加医生信息,zhangdanKind()按姓名查询医生信息;在HuanZhe患者类中,增加了数据成员患者的药费(drug_fee),包含了成员函数input()增加患者信息,zhangdanKind(

6、)按姓名查询患者信息;在zhangdan帐单类中,包含了数据成员姓名(name)、诊费(office_vist_fee)、药费(drug_fee)、总费用(totl_fee),包含了成员函数totl_pay()用于把总费用从D:bb.txt文件移到D:cc.txt,pay()统计该系统中所有患者的总费用,addzhangdan()增加账单信息,zhangdanKind()按姓名查询账单信息。2.1.2 类之间的关系在该系统中医生与患者都有数据成员姓名(name)、性别(sex)、年龄(age)以及诊费(office_vist_fee);所以把这些数据成员定义在基类person人类中,docto

7、r医生类与HuanZhe患者类公有继承于基类person人类。2.1.3 函数设计在doctor医生类中,包含了成员函数input()增加医生信息,zhangdanKind()按姓名查询医生信息;在HuanZhe患者类中,包含了成员函数input()增加患者信息,zhangdanKind()按姓名查询患者信息;在zhangdan帐单类中,包含了成员函数totl_pay()用于把总费用从D:bb.txt文件移到D:cc.txt,pay()统计该系统中所有患者的总费用,addzhangdan()增加账单信息,zhangdanKind()按姓名查询账单信息。在该系统中,还包含了普通函数addinfo

8、r()增加信息界面实现,select()查询信息界面实现,zhangdanxinxi() 账单信息界面实现,add_zhuce()实现注册用户,welcome()验证用户登陆,登陆成功显示欢迎信息,Please()诊所信息管理系统主界面的实现。2.2 结构设计2.2.1 系统流程图图2.1 系统流程图2.2.2 界面设计addinfor()增加信息界面包括了1. 增加医生信息2. 增加患者信息0. 退出;select()查询信息界面包括了1. 查询医生信息2. 查询患者信息0. 退出;zhangdanxinxi() 账单信息界面包括了1. 增加账单信息2. 查询账单信息0. 退出;Please

9、()诊所信息管理系统主界面包括了1.查询信息2.账单信息3.增加信息4.统计总费用0.退出系统;main()主函数界面包括了1.用户登录2.用户注册0.退出系统。在这些界面的实现中用switch()语句做选择。3 详细设计3.1 类实现class person /人类protected: string name; char sex; int age; double office_vist_fee;public: person() person() ;class doctor : public person /医生类private: char speicialty15;public: docto

10、r() void input(); /增加医生信息 void zhangdanKind() ; /按姓名查询医生信息 doctor() ;class HuanZhe : public person /患者类private: double drug_fee; public: HuanZhe() void input() ; /增加患者信息 void zhangdanKind(); /按姓名查询患者信息 HuanZhe() ;class zhangdan /帐单类 string name; double drug_fee; double office_vist_fee; double totl_f

11、ee;public: zhangdan() void totl_pay() ; /用于把总费用从D:bb.txt文件移到D:cc.txtvoid pay() ; /实现统计所有患者总费用 void zhangdanKind() ;/按姓名查询账单信息 zhangdan() ;3.2 主函数实现void main()/主函数 /system(color 3F); int w; couttt*n; couttt n; couttt n; couttt 1.用户登录 n; couttt 2.用户注册 n; couttt 0.退出系统 n; couttt n; couttt n; couttt*n;

12、while(1) cout请输入数字:; cinw; switch(w) case 1:Please(); break; case 2:add_zhuce(); break; case 0:exit(0); default: cout输入数字错误!endl; 3.3 模块设计增加医生信息如图3.1所示; 图3.1 增加医生信息函数流程图图按姓名查询医生信息如图3.2所示3.2 按姓名查询医生信息函数流程图账单类如图3.3所示图3.3 账单函数统计所有患者总费用如图3.4所示图3.4 统计所有患者总费用函数增加账单信息如图3.5所示图3.5 增加账单信息函数实现注册用户如图3.6所示图3.6 实

13、现注册用户按姓名查询账单如图3.7所示图3.7按姓名查询账单函数验证用户登陆,登陆成功显示欢迎信息如图3.8所示图3.8 登录成功显示欢迎函数4 系统测试4.1 测试数据序号输入内容说明截图12,zhangsan,123456输2注册,输入姓名及密码,显示成功图4.121输1进入登录界面图4.231登录后显示诊所信息管理系统主界面图4.343在总界面输3进增加信息界面图4.451,lisi,f,32,4.5,erkeyisheng输入要增加医生的相关信息图4.562,wangfang,m,12,4.5,10输入要增加患者的相关信息图4.671在总界面输1进入查询界面图4.781,lisi输1查

14、询医生信息界面,输入姓名得相关信息图4.892,wangfang输2查询患者信息界面,输入姓名得相关信息图4.9102主界面输2进入帐单信息界面图4.10111,wangfang,lisi,4.5,10,14.5输1进入增加账单界面,输入相关信息图4.11122,wangfang输2进入查询账单界面,输患者姓名得到查询结果图4.12134在主界面输4进入统计总费用界面图4.13140在主界面输0退出系统图4.144.2测试结果1.用户注册与登陆(1)用户注册界面如图4.1所示。图 4.1(2)用户登陆界面如图4.2所示。图 4.22诊所信息管理系统主界面如图4.3所示。图 4.33增加信息界面

15、如图4.4所示。图 4.4(1)增加医生信息如图4.5所示。图4.5(2)增加患者信息如图4.6所示。图 4.64查询信息界面如图4.7所示。图 4.7(1)查询医生信息如图4.8所示。图 4.8(2)查询患者信息如图4.9所示。图 4.95帐单信息界面如图4.10所示。图 4.10(1)增加帐单信息如图4.11所示。图 4.11(2)查询帐单信息如图4.12所示。图 4.126统计功能实现如图4.13所示。图 4.13(7)退出系统界面如图4.14所示。图4.144.3 课程设计过程中遇到的问题(1)在switch语句中注意break和return的使用,用return会出现Press an

16、y key to coninue导致没有执行完的程序结束。(2)数据类型在类中设的与后来添加的类型不一致,导致错误。(3)写入文件与输出时出现错误。5 总结经过一个多星期的C+课程设计的训练,我学到了很多,最主要的一点是怎样去运用自己学过的知识,怎样去找到你所需要的资料,并在短时间把它运用到具体的实践中,运用到你所需要的方面。这个过程是很艰难的,要花费很多的时间和精力,但是,在事情过后,自己就会发现自己已经在这个过程中学到了自己想要的东西,这种获得是更深刻的。在做这个C+课程设计的时候,我原先也是学的不怎么好,什么是结构体数据,什么是定义类型,怎样在一个main函数中调用别的定义函数,等等,可

17、以说是忘得差不多了。然而,在这门课程设计中,这些方面却是特别重要的,可以说,掌握了这个,你就完全可以完成自己的任务。这就要求我们要自己去学,自己去探索。当然,看书、问同学是必不可少的,还有,身边有非常丰富的网络资源给我们好好利用,XX就是个很不错的地方。这样就从另一方面锻炼了我们检索知识获取信息的能力,在这个过程中,可以学到的是一种提升自我的能力。当然,由于个人能力所限,这份课程设计有一些别的方面还是要参考人家的的资料,在读懂别人材料的同时,自己取人所长,补己之短,经过多次的调试,总结,最后交出一份自己比较满意的答卷。在本次课程设计中,我发现我对知识的运用不是那么准确,也就是说我对知识掌握的不

18、够熟练。课本上有的知识却不会运用,虽然在本次C+课程设计中,显示出一些我知识上的漏洞,经过这次编写诊所信息管理系统,我发现我熟练掌握了类的定义以及继承与派生,并对文件操作有了初步的掌握,课下还应该继续努力,争取熟练掌握一门编程设计语言,在次基础上,在学习多种编程语言,以便以后可以用到工作中去。通过这次的课程设计,终于我的诊所信息管理系统完美告终,让我进一步的了解到C+在我们日常生活中的重要性,而且,也更进一步的激发了我学习这门语言的兴趣.经过这次的训练,我相信自己以后会用更多的时间来把这门语言学好,掌握好这门必修的基础语言。参考文献1李素若,杜华兵编,C+面向对象程序设计.中国水利水电出版社.

19、2013年.2谭浩强编,C+面向对象程序设计.北京:清华大学出版社,2006年.3安志远,贾振华主编,C+程序设计基础.北京:高等教育出版社,2009.64王超,C+程序设计.北京:地质出版社,2006.825王继明,C+程序设计与应用开发M.北京:清华出版社,2008.附录 源程序代码#include #include #include #include #include using namespace std;class person /人类protected: string name; char sex; int age; double office_vist_fee;public: p

20、erson() person() ;class doctor : public person /医生类private: char speicialty15;public: doctor() void input() /增加医生信息 char t; cout*主治医生基本信息*endl; fstream outfile(D:aa.txt,ios:out|ios:app); /以写方式打开文件 if(! outfile) cout打开文件失败!endl; else coutname; outfilename ; coutsex; if(sex=m|sex=M) outfile男 ; else if

21、(sex=f|sex=F) outfile女 ; else coutsex; if(sex=m|sex=M) outfile男 ; else if(sex=f|sex=F) outfile女 ; coutage; outfileage ; coutoffice_vist_fee; outfileoffice_vist_fee ; coutspeicialty; outfilespeicialtyendl; outfile.close(); cout是否继续添加医生信息Y/N.:t; if(t=y) input(); else return; void zhangdanKind() /按姓名查询

22、医生信息 char t; fstream infile2(D:aa.txt,ios:in); /以读方式打开文件 if(! infile2) cout打开文件失败!arrline0arrline1arrline2arrline3arrline4; line+; string na; coutna; for(int i=0;iline;i+) if(arri0=na) cout 医生姓名:arri0 性别:arri1 年龄:arri2 诊费:arri3元 专业:arri4endl; return; cout记录中没有此医生信息!endl; cout是否继续查询Y/N.:t; if(t=y) zh

23、angdanKind(); else return; doctor() ;class HuanZhe : public person /患者类private: double drug_fee; public: HuanZhe() void input() /增加患者信息 char t; cout*患者基本信息*endl; fstream outfile(D:ee.txt,ios:out|ios:app); /以写方式打开文件 if(! outfile) cout打开文件失败!endl; else coutname; outfilename ; coutsex; if(sex=m|sex=M)

24、outfile男 ; else if(sex=f|sex=F) outfile女 ; else coutsex; if(sex=m|sex=M) outfile男 ; else if(sex=f|sex=F) outfile女 ; coutage; outfileage ; coutoffice_vist_fee; outfileoffice_vist_fee ; coutdrug_fee; outfiledrug_feeendl; outfile.close(); cout是否继续添加患者信息Y/N.:t; if(t=y) input(); else return; void zhangdanKind() /按姓名查询患者信息 char t; fstream infile2(D:ee.txt,ios:in); /以读方式打开文件 if(! infile2) cout打开文件失败!arrline0arrline1arrline2arrline3arrline4; /文件流读取数据 line+; string na; coutna; for(int i=0;iline;i+) if(arr

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

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