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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

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

1、C+诊所信息管理系统设计课设报告一、题目和要求 1二、系统总体设计 1 1、需求分析 12、系统功能模块划分 1三、详细设计 21、数据结构设计 22、函数规划设计 3四、程序运行演示 161、登陆 162、查询信息 173、账单信息 184、增加信息 19五、总结反思 20六、源代码 20一、题目和要求1、题目:“诊所信息管理系统设计”2、问题描述:完成小型诊所的简单信息管理程序,掌握类的设计以及继承和派生的应用。二、系统总体设计1、需求分析1.1 功能要求设计人类(Person类)和医生类(Doctor类),在此基础上,通过增加患者和账单,使它们公用于表示一家诊所的信息管理。(1)在一条医

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

3、要求,可以将问题解决分为以下步骤: (1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;(2)分析系统中的各个实体及它们之间的关系; (3)根据问题描述,设计系统的类层次; (4)完成类层次中各个类的描述; (5)完成类中各个成员函数的定义; (6)完成系统的应用模块; (7)功能调试;(8)完成系统总结报告。2、系统功能模块划分三、详细设计1、数据结构设计11 类设计分别定义了person人类、doctor医生类、HuanZhe患者类以及zhangdan帐单类;在person人类中,包含了数据成员姓名(name)、性别(sex)、年龄(age)以及诊费(office_vist_

4、fee);在doctor医生类中,增加了数据成员医生的专业说明(drug_fee),包含了成员函数input()增加医生信息,zhangdanKind()按姓名查询医生信息;在HuanZhe患者类中,增加了数据成员患者的药费(drug_fee),包含了成员函数input()增加患者信息,zhangdanKind()按姓名查询患者信息;在zhangdan帐单类中,包含了数据成员姓名(name)、诊费(office_vist_fee)、药费(drug_fee)、总费用(totl_fee),包含了成员函数totl_pay()用于统计该系统中所有患者的总费用,addzhangdan()增加账单信息,z

5、hangdanKind()按姓名查询账单信息。1.1.1 person人类protected: string name; string sex; int age; double office_vist_fee;1.1.2 doctor医生类public: void input(); /增加医生信息 void zhangdanKind() ; /按姓名查询医生信息private: string speicialty;1.1.3 HuanZhe患者类public: void zhangdanKind(); /按姓名查询患者信息 void input(); /增加患者信息private: doubl

6、e drug_fee; ;1.1.4 zhangdan账单类public: void totl_pay(); void addzhangdan(); / 增加账单信息 void zhangdanKind(); /按姓名查询账单信息 private: string name; double drug_fee; double office_vist_fee; double totl_fee;12 类之间的关系在该系统中医生与患者都有数据成员姓名(name)、性别(sex)、年龄(age)以及诊费(office_vist_fee);所以把这些数据成员定义在基类person人类中,doctor医生类与

7、HuanZhe患者类公有继承于基类person人类。2、 函数规划设计在doctor医生类中,包含了成员函数input()增加医生信息,zhangdanKind()按姓名查询医生信息;在HuanZhe患者类中,包含了成员函数input()增加患者信息,zhangdanKind()按姓名查询患者信息;在zhangdan帐单类中,包含了成员函数totl_pay()用于统计该系统中所有患者的总费用,addzhangdan()增加账单信息,zhangdanKind()按姓名查询账单信息。在该系统中,还包含了普通函数adding()实现增加信息界面,search()实现查询信息界面,zhangdanxi

8、nxi()实现账单信息界面,landing()验证用户登陆,登陆成功显示欢迎信息,surface()实现诊所信息管理系统主界面。其中adding()增加信息界面包括了1、增加医生信息2、增加患者信息0、返回上一页;select()查询信息界面包括了1、查询医生信息2、查询患者信息0、返回上一页;zhangdanxinxi() 账单信息界面包括了1、增加账单信息2、查询账单信息3、统计总费用0、返回上一页;surface()诊所信息管理系统主界面包括了1、查询信息2、账单信息3、增加信息4、统计总费用0、退出系统;main()主函数界面包括了1、用户登录0、退出系统。在这些界面的实现中用swit

9、ch()语句做选择。2.1增加医生信息void doctor:input() cout*主治医生基本信息*endl; fstream outdoctor(医生.txt,ios:out|ios:app); /以写方式打开文件 if(!outdoctor) cout打开文件失败!endl; else coutname;outdoctorname ; coutsex;outdoctorsex ; coutage;outdoctorage ; coutoffice_vist_fee;outdoctoroffice_vist_fee ; coutspeicialty;outdoctorspeicialt

10、yendl; outdoctor.close(); 2.2按姓名查询医生信息void doctor:zhangdanKind() fstream indoctor(医生.txt,ios:in); /以读方式打开文件 if(!indoctor) cout打开文件失败!endl; return; int line=0; string arr1005; /定义一个string类型的二维数组,用来保存从文本内读取的信息 memset(arr,0,sizeof(arr); /将数组清空 while(!indoctor.eof() /文件不为空的条件设置 cout2arrline0arrline1arrl

11、ine2arrline3arrline4; line+; string mz; coutmz; for(int i=0;iline;i+) if(arri0=mz) cout医生姓名:arri0 性别:arri1 年龄:arri2 诊费:arri3元 专业:arri4endl; return; cout记录中没有此医生信息!endl; cout是否继续查询y/n:t; if(t=y) zhangdanKind(); else return;2.3 增加患者信息void HuanZhe:input() cout*患者基本信息*endl; fstream outH(患者.txt,ios:out|i

12、os:app); /以写方式打开文件 if(!outH) cout打开文件失败!endl; else coutname; outHname ; coutsex;outHsex ; coutage; outHage ; coutoffice_vist_fee; outHoffice_vist_fee ; coutdrug_fee; outHdrug_feeendl; outH.close(); cout是否继续添加患者信息y/n:t; if(t=y) input(); else return;2.4 按姓名查询患者信息void HuanZhe:zhangdanKind() fstream inH

13、(患者.txt,ios:in); /以读方式打开文件 if(!inH) cout打开文件失败!arrline0arrline1arrline2arrline3arrline4; /文件流读取数据 line+; string mz; coutmz; for(int i=0;iline;i+) if(arri0=mz) cout患者姓名:arri0 性别:arri1 年龄:arri2 诊费:arri3元 药费:arri4元endl; return; cout记录中没有此患者的信息!endl; cout是否继续查询y/n:t; if(t=y) zhangdanKind(); else return;

14、2.5 增加账单信息void zhangdan:addzhangdan() fstream outfile1(账单.txt,ios:out|ios:app); /以写方式打开文件 if(!outfile1) cout打开文件失败!endl; else coutname; outfile1name ; coutname; outfile1name ; coutoffice_vist_fee; outfile1office_vist_fee ; coutdrug_fee; outfile1drug_fee ; couttotl_fee; outfile1totl_feeendl; out(); c

15、har t; cout是否继续添加账单信息y/n:t; if(t=y) addzhangdan(); else return;2.6 查询账单信息void zhangdan:zhangdanKind() fstream infile1(账单.txt,ios:in); /以读方式打开文件 if(!infile1) cout打开文件失败!arrline0arrline1arrline2arrline3arrline4; /文件流读取数据 line+; string mz; coutmz; for(int i=0;iline;i+) if(arri0=mz) string xm; xm=arri1;

16、 cout患者姓名:arri0 医生姓名:arri1 诊费:arri2元 药费:arri3元 总费用:arri4元endl; fstream indoctor(医生.txt,ios:in); /以读方式打开文件 if(!indoctor) cout打开文件失败!arrl0arrl1arrl2arrl3arrl4; /文件流读取数据 l+; for(int j=0;jl;j+) if(arrj0=xm) cout医生姓名:arrj0 性别:arrj1 年龄:arrj2 诊费:arrj3 专业:arrj4endl; fstream inH(患者.txt,ios:in); /以读方式打开文件 if(

17、!inH) cout打开文件失败!arrlin0arrlin1arrlin2arrlin3arrlin4; /文件流读取数据 lin+; for(int z=0;zlin-1;z+) if(arri0=mz) cout患者姓名:arrz0 性别:arrz1 年龄:arrz2 诊费:arrz3 药费:arrz4endl; return; cout记录中没有此患者的帐单信息!endl; cout是否继续查询y/n:t; if(t=y) zhangdanKind(); else return;2.7 统计总费用void zhangdan:totl_pay() fstream infile1(账单.t

18、xt,ios:in); /以读方式打开文件 if(!infile1) cout打开文件失败!arrsline0arrsline1arrline0arrline1arrline2; /文件流读取数据 line+; double a; double z=0.0; for(int i=0;iline-1;i+) a=arri2; z=z+a; cout所有患者的总费用为:z元endl; in();2.8 登陆void landing() string name,code; coutname; if(name!=yangqing) couttt*该管理员不存在*endl; landing(); els

19、e coutcode; if(123456789=code) coutttt*成功登入*endl; else couttt*密码错误,请重新输入*endl; coutcode; 2.9 增加信息界面void adding() int a; doctor d; HuanZhe w; coutendl; coutendl; couttt $*增加信息界面*$endl; coutn; couttt $*$n; couttt $ $n; couttt $ 1.增加医生信息 $n; couttt $ 2.增加患者信息 $n; couttt $ 0.返回上一页 $n; couttt $ $n; coutt

20、t $*$n; couta; switch(a) case 1: d.input(); break; case 2: w.input(); break; case 0: break; default: cout输入数字错误!endl; 2.10 查询信息界面void search() int b; doctor d; HuanZhe w; coutendl; coutendl; couttt $*查询信息界面*$endl; coutn; couttt $*$n; couttt $ $n; couttt $ 1.查询医生信息 $n; couttt $ 2.查询患者信息 $n; couttt $ 0.返回上一页 $n; couttt $ $

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

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