诊所信息管理系统设计.docx
- 文档编号:30508281
- 上传时间:2023-08-16
- 格式:DOCX
- 页数:25
- 大小:18.32KB
诊所信息管理系统设计.docx
《诊所信息管理系统设计.docx》由会员分享,可在线阅读,更多相关《诊所信息管理系统设计.docx(25页珍藏版)》请在冰豆网上搜索。
诊所信息管理系统设计
#include
#include
#include
usingnamespacestd;
classperson//人类
{
public:
person(){}
~person(){}//析构函数,释放资源
protected:
stringname;
charsex;
intage;
doubleoffice_vist_fee;//诊费
};
classdoctor:
publicperson//医生类
{
private:
charspeicialty[15];//专业说明
public:
doctor(){}
voidinput()//增加医生信息
{
chart;
cout<<"*****主治医生基本信息*****"< //fstreamoutfile()打开文件aa.txt,并建立链接,aa.txt是一个输出文件,接收从内存输出数据 //ios: : out以输出的方式打开文件 //ios: : app以输出的方式打开文件,写入的数据添加在文件末尾 fstreamoutfile("D: \\aa.txt",ios: : out|ios: : app); if(! outfile) cout<<"打开文件失败! "< else { cout<<"姓名"; cin>>name; outfile< cout<<"性别: "; cin>>sex; if(sex=='m'||sex=='M') outfile<<"男"<<""; elseif(sex=='f'||sex=='F') outfile<<"女"<<""; else { cout<<"请重新输入性别: "; cin>>sex; if(sex=='m'||sex=='M') outfile<<"男"<<""; elseif(sex=='f'||sex=='F') outfile<<"女"<<""; } cout<<"年龄: "; cin>>age; outfile< cout<<"诊费: "; cin>>office_vist_fee;//向磁盘文件aa.txt输入数据 outfile< cout<<"专业说明: "; cin>>speicialty; outfile< outfile.close();//关闭文件 } cout<<"是否继续添加医生信息Y/N......: "< cin>>t; if(t=='y') input();//返回继续添加 else return; } voidzhangdanKind()//按姓名查询医生信息 { chart; //定义输入输出文件流,以输入的方式打开磁盘文件aa.txt fstreaminfile2("D: \\aa.txt",ios: : in);//以读方式打开文件 if(! infile2) { cout<<"打开文件失败! "< return; } intline=0; stringarr[100][100];//定义一个string类型的二维数组,用来保存文本内读取的信息 //char型初始化函数 memset(arr,0,sizeof(arr));//将数组清空 //eof()函数到文件结尾可以返回true,而之前返回的均为false,while(true)->while(false),循环结束 while(! infile2.eof())//文件不为空的条件设置 { infile2>>arr[line][0]>>arr[line][1]>>arr[line][2]>>arr[line][3]>>arr[line][4]; line++; } stringna; cout<<"请输入要查询的医生姓名: "; cin>>na; for(inti=0;i { if(arr[i][0]==na) { cout<<"医生姓名: "< "< "< "< "< return; } } cout<<"记录中没有此医生信息! "< cout<<"是否继续查询Y/N.....: "< cin>>t; if(t=='y') zhangdanKind(); else return; } ~doctor(){} }; classHuanZhe: publicperson//患者类 { private: doubledrug_fee;//药费 public: HuanZhe(){} voidinput()//增加患者信息 { chart; cout<<"*****患者基本信息*****"< fstreamoutfile("D: \\ee.txt",ios: : out|ios: : app);//以写方式打开文件 if(! outfile) cout<<"打开文件失败! "< else { cout<<"姓名"; cin>>name; outfile< cout<<"性别: "; cin>>sex; if(sex=='m'||sex=='M') outfile<<"男"<<""; elseif(sex=='f'||sex=='F') outfile<<"女"<<""; else { cout<<"请重新输入性别: "; cin>>sex; if(sex=='m'||sex=='M') outfile<<"男"<<""; elseif(sex=='f'||sex=='F') outfile<<"女"<<""; } cout<<"年龄: "; cin>>age; outfile< cout<<"诊费: "; cin>>office_vist_fee; outfile< cout<<"药费: "; cin>>drug_fee; outfile< outfile.close(); } cout<<"是否继续添加患者信息Y/N......: "< cin>>t; if(t=='y') input(); else return; } voidzhangdanKind()//按姓名查询患者信息 { chart; fstreaminfile2("D: \\ee.txt",ios: : in);//以读方式打开文件 if(! infile2) { cout<<"打开文件失败! "< return; } stringarr[100][100]; intline=0; memset(arr,0,sizeof(arr));//将数组清空 while(! infile2.eof())//文件不为空的条件设置 {//文件流读取数据 infile2>>arr[line][0]>>arr[line][1]>>arr[line][2]>>arr[line][3]>>arr[line][4];//文件流读取数据 line++; } stringna; cout<<"请输入要查询的患者姓名: "; cin>>na; for(inti=0;i { if(arr[i][0]==na) { cout<<"患者姓名: "< "< "< "< "< return; } } cout<<"记录中没有此患者信息! "< cout<<"是否继续查询Y/N.....: "< cin>>t; if(t=='y') zhangdanKind(); else return; } ~HuanZhe(){} }; classzhangdan//账单类 { private: stringname; doubledrug_fee; doubleoffice_vist_fee; doubletotl_fee; public: zhangdan(){} voidtotl_pay()//用于把总费用从“D;\\bb.txt”文件转移到"D: \\cc.txt" { stringa; fstreaminfile1("D: \\bb.txt",ios: : in);//以读方式打开文件 if(! infile1) { cout<<"打开文件失败!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 诊所 信息管理 系统 设计